Upload
ngonhu
View
349
Download
13
Embed Size (px)
Citation preview
https://support.industry.siemens.com/cs/ww/en/view/109478857
Application description � 09/2015
Application example for connection
of a KUKA robot with KR C4 to a
SINUMERIK 840D sl with NCU 7x0.3SINUMERIK Integrate Run MyRobot /Machining V2.0
SINUMERIK Integrate Run MyRobot /MachiningItem-ID: 109478857, V2.0, 09/2015 2
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Legal informationWarning concept
This manual contains information that you must observe in order to ensure yourown personal safety as well as to avoid material damage. The notices referring toyour personal safety are highlighted in the manual by a safety alert symbol, noticesreferring only to property damage have no safety alert symbol. Depending on thehazard level, warnings are indicated in a descending order as follows.
DANGER
Indicates that death or severe injuries will result if proper precautions are nottaken.
WARNING
Indicates that death or serious injury can result if proper precautions are not taken.
CAUTION
Indicates that minor personal injury can result if proper precautions are not taken.
ATTENTION Indicates that property damage can result if proper precautions are not taken.
If more than one level of danger is simultaneously applicable, the warning noticefor the highest level is used. If a warning notice is used with the safety alert symbolto warn against injury, this same notice may also include a warning regardingproperty damage.
Qualified personnelThe product/system described in this documentation may be operated only bypersonnel qualified for the specific task in accordance with the relevantdocumentation, in particular its warning notices and safety instructions. Qualifiedpersonnel are those who, based on their training and experience, are capable ofidentifying risks and avoiding potential hazards when working with theseproducts/systems.
Proper use of Siemens productsNote the following:
CAUTION
Siemens products may only be used for the applications specified in the catalog and inthe associated technical documentation. If third-party products and components aredeployed, then they must be recommended or approved by Siemens. To ensure trouble-free and safe operation of the products, they must be transported, stored, assembled,installed, commissioned, operated and maintained appropriately. The permissibleambient conditions must be adhered to. The notes in the associated documentationmust be complied with.
SINUMERIK Integrate Run MyRobot /MachiningItem-ID: 109478857, V2.0, 09/2015 3
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
TrademarksAll names identified by the trademark symbol ® are registered trademarks ofSiemens AG. Other designations used in this document may be trademarks whoseuse by third parties for their own purposes could violate the rights of the trademarkowners.
Disclaimer of liabilityWe have verified that the contents of this document correspond to the hardwareand software described. Since variance cannot be precluded entirely, we cannotguarantee full consistency. The information given in this publication is reviewed atregular intervals and any corrections that might be necessary are made in thesubsequent editions.
Security notesSiemens provides products and solutions with industrial security functions thatsupport the secure operation of plants, solutions, machines, equipment, and/ornetworks. They are important components in a holistic industrial security concept.With this in mind, Siemens products and solutions undergo continuousdevelopment. Siemens recommends that you inform yourself regularly aboutproduct updates.To ensure the secure operation of Siemens products and solutions, it is necessaryto take suitable preventive measures (e.g. cell protection concept) and integrateeach component into a state-of-the-art holistic industrial security concept. Third-party products that may be in use should also be considered. For more informationabout industrial security, visit http://www.siemens.com/industrialsecurityTo stay informed about product updates as they occur, sign up for our product-specific newsletter. For more information, visit http://support.industry.siemens.com
Table of contents
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 4
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Table of contentsLegal information ......................................................................................................... 2
1 Scope .................................................................................................................. 6
1.1 System requirements ........................................................................... 71.2 Contents of the project package .......................................................... 8
2 PLC Library RMR-Machining ............................................................................ 9
2.1 DB300: DbRmrM_IfRobotX - Interface ................................................. 92.1.1 Signals to RODI .................................................................................... 92.1.2 Signals from RODI ............................................................................. 102.1.3 Alarms and Messages from RODI ..................................................... 112.2 FB310: FbRmrM_Common – Signal exchange ................................. 12
3 HW configuration and isochronism ............................................................... 13
3.1 Isochronism objective ......................................................................... 133.2 PLC: Creating a base project ............................................................. 143.3 PLC: Customizing the hardware configuration ................................... 15
4 PLC Sample-Project ........................................................................................ 27
4.1 PLC sample application for commissioning a KUKA robotsystem on a SINUMERIK ................................................................... 27
4.2 PLC: Using the base program ............................................................ 284.3 Block description ................................................................................ 294.4 PLC: Configuring blocks ..................................................................... 304.4.1 OB100: ObCompleteRestart .............................................................. 304.4.2 OB1: ObCyclExc ................................................................................ 314.4.3 FB210: FbSelJogMode ....................................................................... 334.4.4 FC218: FcOvrMcpHpu ....................................................................... 334.4.5 FC219: FcMcpHpu ............................................................................. 344.4.6 FC220: FcOp ...................................................................................... 344.4.7 FC222: FcModeGroup ........................................................................ 344.4.8 FC223: FcChannel ............................................................................. 344.4.9 FC230: FcAxTables ............................................................................ 354.4.10 FC231: FCAxes .................................................................................. 424.4.11 FC232: FcAxis .................................................................................... 424.5 HMI: Base configuration for Operate .................................................. 434.5.1 Assign axis names for HPU dialog: .................................................... 434.5.2 Assign inscription for supplementary keys for the HPU: .................... 434.5.3 Import information to the NC: ............................................................. 434.6 Operate: Converting and importing alarm messages ........................ 46
5 Robot diagnostics (RoboDiag) ....................................................................... 47
5.1 UDP connection between NC and robots .......................................... 475.2 PLC: Customizations for RoboDiag ................................................... 485.3 Block description ................................................................................ 495.4 RoboDiag example implementation ................................................... 495.5 RoboDiag error messages ................................................................. 525.6 Operate: Customizations for RoboDiag communication .................... 535.7 KRC: Customizations for RoboDiag communication ......................... 565.7.1 Operate: Functions and explanation of the RoboDiag user
interface .............................................................................................. 58
6 Parameter assignment of an NC channel for robots withCreateMyConfig (CMC) .................................................................................... 59
6.1 General ............................................................................................... 59
Table of contents
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 5
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
6.2 Configuring the installation in “RMR_M.ini” ........................................ 606.3 Commissioning sequence .................................................................. 61
7 Machine data .................................................................................................... 63
7.1 General machine data ........................................................................ 637.2 Channel-specific machine data .......................................................... 647.2.1 CC ROBX (ROBot transformation eX) ............................................... 667.2.2 CC RODI (RObot Drive Interface) ...................................................... 677.3 Axis-specific machine data ................................................................. 687.3.1 RA11 axis ........................................................................................... 687.3.2 RA12 axis ........................................................................................... 697.3.3 RA13 axis ........................................................................................... 707.3.4 RA14 axis ........................................................................................... 717.3.5 RA15 axis ........................................................................................... 727.3.6 RA16 axis ........................................................................................... 72
8 Safety Integrated .............................................................................................. 74
8.1 Sinumerik Profisafe ............................................................................ 748.1.1 NCK (SAFE.SPF) ............................................................................... 748.1.2 PLC (FC3000) .................................................................................... 768.1.3 Machine Data ..................................................................................... 778.2 KUKA Safe Operations ....................................................................... 778.2.1 Safe Inputs of the KRC ....................................................................... 788.2.2 Safe Outputs of the KRC .................................................................... 81
9 Coordinate systems ........................................................................................ 84
9.1 General ............................................................................................... 849.1.1 Frame ................................................................................................. 849.1.2 Translation .......................................................................................... 849.1.3 Rotation .............................................................................................. 849.2 Basic coordinate system .................................................................... 869.3 Flange coordinate system .................................................................. 879.3.1 The flange coordinate system for single part tools ............................ 889.3.2 Flange coordinate system for multipart tools ..................................... 89
10 Programming ................................................................................................... 91
10.1 Axial programming ............................................................................. 9110.2 Cartesian programming with virtual rotary axis angles ...................... 9110.3 Orientation programming.................................................................... 9110.3.1 ORIMKS/ORIWKS .............................................................................. 9110.3.2 ORIVIRT1 ........................................................................................... 9210.4 Cartesian PTP travel .......................................................................... 9510.4.1 Function .............................................................................................. 9510.4.2 Activation ............................................................................................ 9510.5 Programming of the position with STAT (State) ................................. 9510.6 Rotary axis sign bit TU (Turn) ............................................................ 9810.7 Sample program ................................................................................. 99
11 Appendix ........................................................................................................ 100
11.1 Service & Support ............................................................................ 10011.2 References ....................................................................................... 10211.3 History .............................................................................................. 102
1 Scope
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 6
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
1 Scope
This document describes how to set up and use Run MyRobot /Machining.Figure 1-1 shows the general procedure for commissioning and operation.
Figure 1-1: procedure for commissioning and operation
PLC commissioning
NC commissioning viaCMC
Safety commissioning
Plant-specific settings
Chapter 2: PLC Library RMR-MachiningChapter 3: HW configuration + isochronous modeChapter 4: PLC Sample-ProjectChapter 5: Robot diagnostics (RoboDiag)
Operation andprogramming
Chapter 6: Parameter assignment of an NC channel for robots with CreateMyConfig (CMC)
Chapter 7: Machine data
Chapter 8: Safety Integrated
Chapter 9: Coordinate systems
Chapter 10: Programming
1 Scope
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 7
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
1.1 System requirementsThe following hardware and software components are needed to commission a 6axis robot with Run MyRobot /Machining. Figure 1-2 illustrates a typical systemstructure.
Figure 1-2 System structure
Hardware components
Table 1-1 Hardware components
Component Count Part number Comment
SINUMERIK NCU 720.3 PNorSINUMERIK NCU 730.3 PN
1
Machine toolSINUMERIK OP
MCP 483 IE
HT8
SINUMERIK840D sl
Additional Axes,Spindle
KUKA CCUBoard
IM151-3 HSwith 1 DO
1 Scope
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 8
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Softwarecomponents
Tabelle 1-2 Softwarecomponents
Component Count Part number Comment
NC-SW 4.7 SP1 HF3 or newer 1Toolbox V04.07.22 or newer 1Additional NC axes 6Option Interpolation > 4 Achsen 1 6FC5800-0AM15-0YB0CC_RODI 1 6FC5800-0AN65-0YB0 Installed and
setup with CMC
CC_ROBX 1 Installed andsetup with CMC
SI-Comfort incl. 1 axis and 64 SPLI/0s
1 6FC5800-0AM64-0YB0
Run MyHMI/3GL 1 6FC5800-0AP60-0YB0
1.2 Contents of the project package
The file rmrm2.zip contains these directories:
· AlMsg – Source code to enable the generation of the alarm texts for a specific HMI configuration
· arc – a sample archive for a 6 axis robot· card – the compiled alarm texts and configuration files
for the CF card of the NCU or the hard disk of the PCU· cmc – CreateMyConfig (CMC) installation package to set up an NC
channel for the robot including compile cycles· doc – Product documentation· nc – Sample SAFE.SPF for the Safey Integrated· plc – PLC library and sample Step7 project
2 PLC Library RMR-Machining
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 9
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
2 PLC Library RMR-Machining2.1 DB300: DbRmrM_IfRobotX - Interface
2.1.1 Signals to RODI
Table 2-1 DB300 signals to RODI
DB300 Signals toRODIByte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0 Reset ClrCancel KeyTraceRecord
KeyMoveEnable
T1T2
KeyDrivesOn
1 MASTERINGT.REQ_EXT
BRAKETESTREQ_EXT
SiEStopDelayed
SiEStop
SiAcceptance
SiGuardDoors
2 MoveEnableT1T2 DrivesOn
3 PgNo
35 ExtProgOverride
6 DirectToKrc[7] DirectToKrc[6] DirectToKrc[5] DirectToKrc[4] DirectToKrc[3] DirectToKrc[2] DirectToKrc[1] DirectToKrc[0]
7 DirectToKrc[15] DirectToKrc[14] DirectToKrc[13] DirectToKrc[12] DirectToKrc[11] DirectToKrc[10] DirectToKrc[9] DirectToKrc[8]
Table 2-2 Description of signals to RODI
Signal name Type Description
KeyDrivesOn BOOL Key signal for on- / off-switching of the robot drives. Stateof ‚DrivesOn‘ changes with a rising edge. Alternatively,‚DrivesOn‘ can be supplied with a static signal (S/R).
KeyMoveEnableT1T2 BOOL Key signal for on- / off-switching of move enabling whilerobot is in T1- or T2-mode. State of ‚MoveEnableT1T2‘changes with a rising edge. Alternatively, ‚MoveEnable-T1T2‘ can be supplied with a static signal (S/R).
KeyTraceRecord BOOL Key signal for on- / off-switching of the internal RODI-Trace.
ClrCancel BOOL Alarm cancelling to KRC.Reset BOOL Error cancelling to PLC und KRCSiGuardDoors BOOL State Guard Doors. 1=Locked and closedSiAcceptance BOOL State Acceptance key. 1=ApprovedSiEStop BOOL State Emergency Stop. 1=E-Stop activeSiEStopDelayed BOOL State Emergency Stop delayed. 1=E-Stop delayed activeBRAKETEST_REQ_EXT BOOL Braketest request to KRCMASTERINGTEST_REQ_EXT BOOL Masteringtest request to KRCDrivesOn BOOL Drives enable. See ‚KeyDrivesOn‘MoveEnableT1T2 BOOL Move enable. T1/T2. See ‚KeyMoveEnableT1T2‘PgNo BYTE Program number to KRC
1 RODI-Mode 2 Start Braketest 3 Start Masteringtest 4..14 free 15 reserved for internal use
2 PLC Library RMR-Machining
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 10
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Signal name Type Description
ExtProgOverride BYTE Program override for PgNo 2..14DirectToKrc[0..15] BOOL Signal transfer directly to KRC
2.1.2 Signals from RODI
Table 2-3 DB300 Signals from RODI
DB300 Signals fromRODIByte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
8 SiExtMoveEnable DrivesOn Led
TraceActive
LedMoveEnable
T1T2
LedDrivesOn
9 EXT AUT T2 T1 STOPMESS PRY_RDY1 USER_SAF RC_RDY
10 ROB_CAL ALARM_STOP_I ALARM_STOP
11 PgNoActive
12 BRAKETESTWARN
BRAKES_OK BRAKETESTWORK
BRAKETESTREQ_INT
BRAKETESTMONTIME
MASTERINGT.SWITCH_OK
MASTERINGT.ACTIVE
MASTERINGT.REQ_INT
13 RC_FATAL_ERROR
RC_HAS_ALARM
RC_REQUEST_EMSTOP
RC_REQUEST_NC_STOP
RC_READY_TO_FOLLOW
14 DirectFromKrc[7]
DirectFromKrc[6]
DirectFromKrc[5]
DirectFromKrc[4]
DirectFromKrc[3]
DirectFromKrc[2]
DirectFromKrc[1]
DirectFromKrc[0]
15 DirectFromKrc[15]
DirectFromKrc[14]
DirectFromKrc[13]
DirectFromKrc[12]
DirectFromKrc[11]
DirectFromKrc[10]
DirectFromKrc[9]
DirectFromKrc[8]
Table 2-4 Description Signals from RODI
Signal name Type Description
LedKeyDrivesOn BOOL LED state robot drivesOFF KRC not in operating mode EXTFLASHING Drives are being enabledON Drives are enabled
LedMoveEnableT1T2 BOOL LED state move enable in T1- or T2-mode.OFF KRC nicht in BA T1/T2FLASHING KRC in T1/T2: No enable signal for KCPON KRC in T1/T2: Move enable for KCP
LedTraceActive BOOL LED state internal RODI-Trace. 1=Recording active.DrivesOn BOOL Robot drives enabled.SiExtMoveEnable BOOL Signal for SafetyIntegrated: Drives enabled.RC_RDY1 BOOL Robot controller ready for program startUSER_SAF BOOL User safety not suspendedPERY_RDY BOOL Robot drives enabledSTOPMESS BOOL Message with movement stop activeT1 BOOL KRC in operating mode: Test 1T2 BOOL KRC in operating mode: Test 2AUT BOOL KRC in operating mode: AutomaticEXT BOOL KRC in operating mode: Automatic externalALARM_STOP BOOL Robot stop caused by Emergency-stopALARM_STOP_I BOOL Emergency-Stop pressed on KCP
2 PLC Library RMR-Machining
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 11
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Signal name Type Description
ROB_CAL BOOL All robot axes are adjustedPgNoActive BYTE Confirmation active program numberMASTERINGTEST_REQ_INT BOOL Masteringtest request by RCMASTERINGTEST_ACTIVE BOOL Masteringtest activeMASTERINGTEST_SWITCH_OK BOOL Masteringtest switch OKBRAKETEST_MONTIME BOOL Braketest monitoring time endedBRAKETEST_REQ_INT BOOL Braketest request by RCBRAKETEST_WORK BOOL Braketest activeBRAKES_OK BOOL All brakes OKBRAKETEST_WARN BOOL Min. 1 brake reached warning limitRC_READY_TO_FOLLOW BOOL RC ready to followRC_REQUEST_NC_STOP BOOL RC requests NC-StopRC_REQUEST_EMSTOP BOOL RC requests Emergency-StopRC_HAS_ALARM BOOL RC reports alarmRC_FATAL_ERROR BOOL RC reports fatal errorDirectFromKrc[0..15] BOOL Signal transfer direct from KRC
2.1.3 Alarms and Messages from RODI
Table 2-5 DB300 Signals from RODI
DB300 Signale fromRODIDWORD
16 Alarms, array[0 .. 31] of bool
20 Messages, array[32 .. 63] of bool
Table 2-6 Alarms and Messages;Alarms703000 0 0 ""703001 0 0 ""703002 0 0 ""703003 0 0 ""703004 0 0 ""703005 0 0 ""703006 0 0 ""703007 0 0 ""703008 0 0 "RC1: Mastering switch is not OK"703009 0 0 "RC1: At least 1 Brake is not OK"703010 0 0 ""703011 0 0 ""703012 0 0 ""703013 0 0 ""703014 0 0 ""703015 0 0 ""703016 0 0 ""703017 0 0 ""703018 0 0 ""703019 0 0 ""703020 0 0 ""703021 0 0 ""703022 0 0 ""703023 0 0 ""
2 PLC Library RMR-Machining
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 12
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
703024 0 0 "RC1 requests an interpolated stop reaction from the NC"703025 0 0 "RC1 requests an interpolated emergency stop reaction from theNC"703026 0 0 "RC1 executes a Stop, over which the NC hss no control"703027 0 0 "RC1 FATAL ERROR - checksum, time stamp error"703028 0 0 ""703029 0 0 ""703030 0 0 ""703031 0 0 ""
;Messages703032 0 0 "RC1 in mode T1"703033 0 0 "RC1 in mode T2"703034 0 0 "RC1 in mode AUT"703035 0 0 ""703036 0 0 "RC1 not READY"703037 0 0 "RC1 general fault"703038 0 0 ""703039 0 0 ""703040 0 0 "RC1: mastering program needs to be done"703041 0 0 "RC1: mastering active"703042 0 0 "RC1: Timer for brake test overdue has been exceeded"703043 0 0 "RC1: brake test needs to be done"703044 0 0 "RC1: brake test active"703045 0 0 "RC1: at least 1 Brake has reached the wear limit"703046 0 0 ""703047 0 0 ""703048 0 0 "RC1: Robot not calibrated"703049 0 0 "RC1: E-Stop on SmartPad is pressed"703050 0 0 ""703051 0 0 ""703052 0 0 ""703053 0 0 ""703054 0 0 ""703055 0 0 ""703056 0 0 ""703057 0 0 ""703058 0 0 ""703059 0 0 ""703060 0 0 "RODI RC1: Reading MD62956 DBD_START_INDEX"703061 0 0 "RODI RC1 CcComState 0: waiting for communication"703062 0 0 "RODI RC1 CcComState 1: waiting for robot to catch up"703063 0 0 "RODI RC1 CcComState 2: waiting for RC positionen in IPO to takeeffect"
2.2 FB310: FbRmrM_Common – Signal exchange
· Communication with RODI and supply of the Interface-DBs
CALL "FbRmrM_Common" , "DbInstRmrM_Common1"
DbRobIf := 300 // Interface-DB
Channel := 1 // Channel number
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 13
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
3 HW configuration and isochronism3.1 Isochronism objective
Direct IRT Data exchange between the SINUMERIK and the KR C4 is not possibleon account of differences in the architectures of the two systems. Instead, asynchronization similar to that achieved with IRT is realized by having a clocksignal. The clock signal is a PLC output which is synchronized to the NC via IRT.Using this method it is possible to synchronize the time systems of the twocontrols.
Figure 3-1 Net topology for SINUMERIK and KRC.
ATTENTION
It is mandatory to use KUKA GSDML Version 2.31 with the corresponding ProfinetKRC-Nexxt, V3.2.0_Build06 (on the KRC) or newer!
Hardware configuration has to be created with the hardware catalog of theSINUMERIK Toolbox V4.7.22 or newer!
If these requirements are not met, communication errors between SINUMERIKand KRC can be expected. These failures are very difficult to determine!
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 14
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
3.2 PLC: Creating a base project
Start the SIMATIC Manager and create a new SINUMERIK base project.
Figure 3-2 Creating a SINUMERIK rack step 1 Insert > Station > SIMATIC 300 station
Figure 3-3 Creating a SINUMERIK rack step 2 Double-click Hardware.
Figure 3-4 Creating a SINUMERIK rack step 3 in the hardware configuration, create theappropriate SINUMERIK (SIMATIC 300 > SINUMERIK > 840D sl >NCU7x0.3 PN (V3.2)) per drag-and-drop.
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 15
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
3.3 PLC: Customizing the hardware configuration
Once the SINUMERIK has been created, the appropriate network can be defined.To define the isochronism, go via port X150 port 2 from the SINUMERIK to the tothe KRC port:
Figure 3-5 Define the network topology: Right-click X150 PN-IO and left-click AddPROFINET IO system.
Figure 3-6 Define the network topology: If required, customize the IP address and then clickNew… to create a new Ethernet network.
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 16
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 3-7: Define the network topology: Click OK to confirm the configuration and close thescreen form.
The connection to the KRC can now be configured on the new Ethernet network.Repeat the following steps correspondingly for each further robot:
Figure 3-8 Drag-and-drop is used again to add the I/O module to the Ethernet bus (e.g.PROFINET IO > I/O > ET 200S > IM151-3 PN HS V3.0).
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 17
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 3-9 Double-click the new object to assign the device name, the device number andthe IP addresses (by clicking Ethernet…) For example, the numbering isstarted at IP 110 (the next robot is then 120, etc.).
Add the kuka-cp-1 with the appropriate plug-in modules:
Figure 3-10 The PM and DO modules have been added in the kuka-cp per drag-and-drop
The KRC is inserted in the same manner.
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 18
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 3-11 Integrate the KRC4
Double-click the new object to also assign the device name, the device numberand the IP addresses (by clicking Ethernet…) For example, the numberingcontinues with IP 111 (the next robot is then 121, etc.):
Figure 3-12 KRC4 configuration.
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 19
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
The existing 256 digital I/Os have to be exchanged with the 1024 digital I/Os.
Figure 3-13 Proceed similarly for the KRC (PROFINET IO > Additional Field Devices >I/O > KRC4-ProfiNet_3.2 > KRC4-ProfiNet_3.2)
Use the figure to check whether your system is complete and, if necessary, addadditional components for further robots.
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 20
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 3-14 Complete component configuration for a robot
The internal interconnection of the components follows. To avoid errors, follow thefigures in the correct order:
Figure 3-15 Right-click X150 PN-IO and left-click PROFINET IO topology…
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 21
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 3-16 You can interconnect the components per drag-and-drop in the Graphic viewtab, port 2 is used for the SINUMERIK X150.
The IRT-Connection has to start at X150 Port 2 of the SINUMERIK and lead tokuka-cp-1 Port 2, because the physical connection of the clock periphery is built inthis way in serialized form by KUKA! The connection from kuka-cp-1 to kuka-rc-1 isoptional and helps only to visualize the configuration.
Click OK to confirm your entries and to close the screen form.
Right-click X150 PN-IO again and now left-click PROFINET IO-DomainManagement… to select.
Select the SINUMERIK / PN-IO and SINMUERIK / (110) kuka-cp-1 componentssuccessively and click Device properties….The PN-IO receives the Sync master synchronization role.The switch and the KUKA CP have the Sync slave synchronization role. TheKUKA-RC is not assigned any role:
Figure 3-17 Defining the synchronization roles (PN-IO -> Sync master)
Set the send cycle clock to 2.000 ms (NC position controller clock) in the SyncDomain Tab.
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 22
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 3-18 Setting the send cycle clock to 2000 ms
Now double-click the CPU (in this example, CPU317F-3 PN/DP), switch to theSynchronous Cycle Interrupts tab and select 100 as IO system no. for the NCK:
Figure 3-19 CPU properties Assign the IO system no. of the NCK.
Once you have confirmed everything, select the kuka-cp-module with a left clickand double-click PN-IO. Select there the NCK as Assign IO device inisochronous mode in the IO cycle tab:
Figure 3-20 Declare isochronism
Click OK to confirm the change and click Yes for the prompt whether the I/Oaddresses should be assigned automatically to the TPA.
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 23
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 3-21 Automatically assign I/O address to the PIP
Check whether TPA 2 is selected for the plug-in module in the kuka-cp. Click theappropriate modules (e.g. 4DO) and switch to the Addresses tab. Correct thissetting and, if necessary, also customize the output address range (in thisexample, A200.0-200.3):
Figure 3-22 Setting the process image and the address range
Proceed similarly for the kuka-rc. Select with a left click and double-click theInterface1 module. Switch to the IO cycle tab and select the Automatic mode.Click OK to confirm the change.
Figure 3-23 Setting the IO cycle
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 24
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Then double-click the 64 safe digital Inputs~ submodule and set the safe addressranges in the Addresses tab (this manual uses the input and output addresses202 as example). The subprocess image remains as OB1-PI:
Figure 3-24 Setting the process image and address range
Repeat this step for the 1024 digital inputs and outputs~ submodule. Theprocess image, however, is changed to PIP 2 and the addresses can be adaptedagain:
Figure 3-25 Setting the process image and the address range
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 25
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
The Ti- and To-times have to be determined and entered in the CPU settings. Therespective values can be adopted from the SINAMICS-DP-slave properties:
Figure 3-26 Ti- and To-times in SINAMICS_integrated.
Finally, enter the correct time values for Ti and To. Return to the CPU properties.Double-click the CPU (in this example, CPU317F-3 PN/DP), switch to theSynchronous Cycle Interrupts tab and click the Details button for the NCK. Youcan now set the Ti/To mode to fixed and enter the values for Ti = 250 and To =1000:
Figure 3-27 Editing the NCK details Setting the Ti/To times.
3 HW configuration and isochronism
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 26
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Now open the object properties of the PROFINET IO system and set for thedevices kuka-rc-1 and kuka-cp-1 the Update Time respectively the Mode to‘Automatic’.
Figure 3-28 Update time of all IO devices
Click OK to end, save and close your hardware configuration. If any errormessages occur during the translation, check the performed steps carefully.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 27
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4 PLC Sample-Project4.1 PLC sample application for commissioning a KUKA
robot system on a SINUMERIKThe following sections lead you stepwise through the various modules (and theirimplementation) and so permits a comprehensive commissioning of the system.
Customers can obviously also make changes and customizations or use their owncomplete solutions. The programs and modules provided by Siemens should serveonly as introductory aid and so do not make any claims for completeness.
Depending on the system, further customizations may need to be made. In thiscase, the basic configuration for a KUKA robot is performed.
DANGER
Safety has highest priority
Even when the base project by itself covers comprehensive functions, it must beensured that during, but in particular before, each test that unexpected events donot cause injuries or material damage.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 28
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.2 PLC: Using the base programThe PLC sample project, supplemented with own ideas, is the easiest way to bringRun MyRobot /Machining to life. Hardware configuration and isochronism isalready implemented. Just complete the SAFE-part and the robot is ready to start.
Figure 4-1 Base program for KRC connection to SINUMERIK
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 29
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.3 Block descriptionTable 4-1 Library basic blocks
Block Name Note
OB1 ObCyclExc Call all cyclical machining tasksOB100 ObCompleteRestart Call the startup routineFB210 FbSelJogMode Channel configuration and module evaluationFC218 FcOvrMcpHpu Switch MCP/HPU override handlingFC219 FcMcpHpu Main block for MCP/HPU evaluation and controlFC220 FcOp MCS/WCS switchoverFC222 FcModeGroup Group resetFC223 FcChannel Evaluate the override valuesFC230 FcAx tables Configuration of axis groupsFC231 FcAxes Configuration of active axesFC232 FcAxis Axis enablesFC3000 FcSPL Safety block (minimum configuration)FC3010 FcEStop Emergency stop (sample program)FC3020 FcGuardDoors Protective doors (sample program)DB100 DbUserVers Version information for NCDB111 DbMcpHpu Interface DB for MCP/HPUDB210 DbInstSelJogMode Instance DB for FB210UDT1018 UdtSpl Safety DB based on SINUMERIK DB18
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 30
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.4 PLC: Configuring blocks
A robot is created in the following example.Some blocks in the base program need to be checked and possibly modified.
4.4.1 OB100: ObCompleteRestart
Network 1 contains the Start call of the base program. It is based on the classicSINUMERIK base program. If you use both HPU (e.g. HT8) and MCP(SINUMERIK machine control panel), the configuration of the HT8 must be at thefirst position. The MCP, even without HPU, must always be entered in thesecond position. The number of HMI devices is accordingly two (see figure). Ifno MCP is used, bits 62.2 (MCP2Stop) and 62.4 (MCP2NotSend) in the DB7 mustremain set to TRUE.Further changes should be made only by experienced users in special cases.Network 2 provides a startup timer as described in the figure:
Figure 4-2 OB100 configuration
Number of HMI devices(always 2!)
Bus address of the 1st device(HPU)
Bus address of the 2nddevice (MCP)
The startup timer (by default 10 seconds)ensures a full run up of the robot includinga proper SAFE communication.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 31
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.4.2 OB1: ObCyclExc
Figure 4-3 OB1 configuration
The minimum safety program forthe PLC (only an example thatmust be customized for everyplant, in particular NW13-18)
Emergency stop, protective doors,(must be customized). Furtheruser-specific blocks can belocated here.
These blocks aredescribed in detail inthe followingsubsection.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 32
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Alarm / message text handling(can be customized if necessary)
These blocks aredescribed in detail inthe followingsubsection.
Acknowledge Operateerror message
Robot diagnostics (willbe explained in chapterRobot diagnostics(RoboDiag)).
Robot 1 Machining-interface application.
Sample user applicationfor Robot 1.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 33
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.4.3 FB210: FbSelJogMode
Because every robot operates in its own NC channel, the appropriate settings mustbe made. All three conceivable variants (machining, handling, robot-less NCchannel) are now listed as examples. The behavior also depends on MD21106 andSD42650. If a channel is not used, all variables are set to CLR:
Figure -4-4 FB210 Configuration for three different channel configurations
4.4.4 FC218: FcOvrMcpHpu
The switch between MCP and HPU (namely, machine control panel and hand-heldprogramming unit) is defined in this function. Because this phase is particularlycritical, each machine manufacturer should implement its own procedure. There isno single valid solution for the switchover process. The question must be answeredwhich override of which device has the higher priority (is the override value valid atswitchover or the new value immediately? May this permit a jump from 0 to 100%?etc.).In this example, the override is always activated from the new HMI device. Theonly exception is an override for 0 at the MCP. In this case the HPU cannotexercise any effect. The override remains as 0.
Make MCS/WCS available
Make BCS available
Make TCS available
Traversing with/withouttransformation (e.g. Robx)
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 34
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
DANGER
Check and communicate the override settings in the FC218!
For a switch from MCP to HPU, the override can set a new, significantly highervalue. The resulting immediate speed change can cause major material damageand severe injuries.
Consequently, the switchover behavior must be checked carefully, customizedappropriately and explained understandably to all involved persons!
4.4.5 FC219: FcMcpHpu
This function evaluates whether on the HMI device the workpiece, base or toolcoordinate system was selected, a traversal command is available (+/-/Rapidkeys), shows the associated required keys on the HPU and generates theappropriate submenus from the configured axis groups (see FC230).Furthermore, the switchover between Auto, Jog, Repos, Teach In and Homing ishandled, and any available increment steps differentiated.NC Start, NC Stop, Reset are also evaluated, as are spindle and feed stop. Finally,the associated LEDs on the selected keys are activated and the outputs set. Thisblock should be changed only by experienced users.
4.4.6 FC220: FcOp
This FC makes the switchover between the machine coordinate system and theworkpiece coordinate system, etc.
4.4.7 FC222: FcModeGroup
This FC evaluates whether a reset is made from the MCP (machine control panel)or the HPU (hand-held programming unit). Pressing the Reset key for longer than0.5 seconds initiates a group reset! This behavior can be customized or removedcompletely.
4.4.8 FC223: FcChannel
This function sets the override and the feed stop for channel 1 to 3. Furtherchannels can be added similarly. Additional customizations are not necessary.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 35
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.4.9 FC230: FcAxTables
The assignment between the selected axis on the HMI terminal and the associatedmachine/channel axis is made in the FC230. Because the number of keys on amachine control panel (MCP) is, however, limited physically, but for an HT8terminal (MPU) with its virtual keys can be almost limitless, case differentiationsmust be made. Furthermore, both Cartesian traversals (e.g. travel in the Xdirection) and axial traversal commands (e.g. rotate axis 1 30° counterclockwise)should be possible:
Figure 4-5 Decision table Traversal command with key and traversal capabilities
Consequently, this block must be customized. An extension for four or morechannels must also be added if necessary:
Figure 4-6 FC230: Extension of the jump list for more than three channels
The jump target must also be evaluated accordingly (to do this, it is best to copy anexisting network, e.g. for channel 1). The configuration of such a jump evaluation isnow described in detail.
Motioncommandusing key
Handheld device
Tool / basic / worldcoordinate system(cartesian, DB2x)
Machine coordinatesystem
(axial, DB3x)
Machine controlpanel
Tool / basic / worldcoordinate system(cartesian, DB2x)
Machine coordinatesystem
(axial,DB3x)
Channel 1Channel 3
Additional channels, e.g.JU ch04 for channel 4
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 36
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Channel 1 already has a preassignment that can be used partially for furtherchannels.The first part of the jump evaluation specifies whether more than one menu pageshould be used (six axes keys can be assigned per menu) for the HPU (hand-heldprogramming unit). The entry for the MCP (machine control panel) is normally zero(in this case there are only the nine physical keys for selecting the axes). A query isalso made whether a Cartesian or an axial traversal is involved:
Figure 4-7 Setting the number of axis groups for the HPU
After the evaluation, a jump is made to the axial/MCP, axial/HPU, Cartesian/MCPor Cartesian/HPU jump marker depending on the result. It can then be specified foreach constellation which key is linked with which axis/geometry.
Number of additionalsubpages.B#16#13 would permit 1additional cartesian and 3additional machine-axisgroups on the HPU.(B#16#11 represents hereone each Cartesian andaxial subpage.)
Consequently, the number ofadditional subpages for MCPnormally remains B#16#0
Cartesian or axial subpage?
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 37
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Note The number assignment to a key has the following meaning:1 – 31: Maschine axes 1 to 31, witihout transformation (MCS)
41–99: Identifier for Geo- or ORI axes, with transformationThis is only for the text assignment. The assignment of jog key toGEO-axis is fixed and cannot be changed: Key 1 is the 1st GEO-axis in the channel, Key 2 is the 2nd GEO axis , key 4 is the 1st
Orientation axis etc..
101–131: Machine axes 1 to 31,with transformation
These definitions serve to define which axis each key controls.
The numbering also determines which text appears on each axis key of the HPU.Depending on which assignment is currently active, eg machine axis or Geoaxis, the text on key 1 of the HPU can be, for example, „RA11“ (assignment =1)or „X“ (assignment=41)
No difference is made between channel axes (e.g. supplementary axes) andmachine axes. The value 108 and 8 both refer to the 8th machine axis. Howeverthe two values result in different text identifiers on the HPU axis key (e.g 7 =„RE11“, but 107 = „E1“).
Notes for the assignment of axes names can be found in the Section HMI: Baseconfiguration for Operate.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 38
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
The first jump marker is for the “axial MCP” case:
Figure 4-8 Evaluation for MCP axial (only axis group 0 is assigned)
Key 2 on the MCPcontrols the 2ndmachine axis (DB32).
Key 9 on the MCPcontrols the 8th machineaxis (DB38).
Key 1 of the second axisgroup on the MCP doesnot control any axis (theMCP does not have anysubpages).
Evaluation of thedeployed axis group(the MCP as standardhas only one).
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 39
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
It also behaves similarly for the axial HPU, although further axes groups can beused. The first six robot axes in this example are listed on one page, whereas thetraversal keys for the 7th and 8th axes are placed on their own subpage:
Figure 4-9 Evaluation for HPU axial (multiple axes groups are used)
Similar to machine axes 1 to 31, the Cartesian traversal capabilities are nowinvestigated. Once again, the MCP is evaluated first.This example uses not only the geometric axes X, Y and Z, but also the orientationaxes A, B and C. Depending on the coordinate system (tool, workpiece, base), thekinematic transformation must control the individual machine axes differently. Forexample, a simple travel movement of the tool tip in the X direction can require thatthe robot moves with all axes.
This example also has a supplementary axis. No transformation is made when thisaxis is traversed. This axis can be used, for example, to traverse the robot to afurther machining station.
Evaluation of the deployedaxis group. Because eightaxes are used in theexample, but only six keysare displayed per page, axisgroup 0 and 1 is used!
Key 3, axis group 0 / menupage 1 controls the 3rdmachine axis (DB33).
Key 1, axis group 1 / menupage 2 controls the 8thmachine axis (DB38).
Key 6, axis group 1 / menupage 2 controls the 7thmachine axis (DB37).
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 40
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Consequently, a differentiation must be made between these two traversal types asexplained in the following figure:
Figure 4-10 Evaluation MCP Cartesian (6 Cartesian axes, 1 supplementary axis)
Key 1 of the second axis group onthe MCP does not control any axis(the MCP does not have anysubpages).
Evaluation of the deployed axisgroup (the MCP as standard hasonly one).
Key 1 controls the first geometricaxis (normally X. For channel 1, itis the DB21), key 2 the second,key 3 the third, key 4 the firstorientation axis (e.g. A), key 5 thesecond, key 6 the third.
Key 9 controls the first Cartesiansupplementary axis or the 8thmachine axis (DB38!).The transformation remainsactive.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 41
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Finally, these keys are still configured for the HPU. Two pages are also requiredhere, because both axis groups are evaluated:
Figure 4-11 Evaluation for HPU geometric (multiple axes groups are used)
Note The AxTables are filled similarly for the second channel, although the jump targetis then ch02. The machine axes of the second robot must be customized (e.g.values 10-16), the supplementary axes can remain the same depending on theapplication case; Cartesian axes are normally also retained because the activechannel is detected automatically.
Evaluation of the deployedaxis group. Because sevenaxes are used in the example,but only six keys are displayedper page, axis group 0 and 1is used!
Key 3, axis group 0 / menu page1 controls the third geometricaxis (normally Z. For channel 1 itis DB21).
Key 1, axis group 1 / menu page2 controls the first Cartesiansupplementary axis or the 8thmachine axis (DB38!).
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 42
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.4.10 FC231: FCAxes
An extension must also be made in the FC231 when multiple robots are deployed ,to specify which axes operate as robot axis:
Figure 4-12 Controller enables and measuring system for all active axes
4.4.11 FC232: FcAxis
Axis enables are made for all active axes here. In the initial state, an enablereleases all available (maximum 31) axes (measuring systems, tracking mode,etc.)Depending on the application situation, the block can be replaced or customized.
Which measuring system is used?(Measuring system 1 is standardfor robot axes)
Axis number
Flag for the axis enable (shouldbe customized)
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 43
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.5 HMI: Base configuration for Operate
4.5.1 Assign axis names for HPU dialog:
The number assignment of a key has the following structure and is explained inmore detail in Chapter 4.4.9 FC230: FcAxTables1 – 31: Identifiers for the machine axis names for axes 1 to 3141 – 99: Identifiers for the GEO- and. ORI-axes101 – 131: Identifiers for the channel axis names for axes1 to 31
The designation for the associated axes is stored in the sljk_lng.ts (…/oem/sinumerik/hmi/RMR_BASIC/lng folder) file. Each language has its own file (bydefault sljk_deu.ts and sljk_eng.ts) whose base structure always remainsidentical:
Figure 4-13 Entering the axis designations in the sljk_lng.ts file
4.5.2 Assign inscription for supplementary keys for the HPU:
The same steps are used for the user keys on the HPU. The associated file islocated with the slck_lng.ts name in the same directory. A dedicated file must becreated for each language.
4.5.3 Import information to the NC:
To make the functions also visible on the user interface, the base user interfacemust be integrated in Operate. To do this, proceed as described above.An FTP program (e.g. WinSCP) establishes a connection between theprogramming device and SINUMERIK in order to access the data structures on theCF card.
The source name may not be changed.
Machine axis 8 receives thedesignation “E1” when it isdisplayed as supplementary axison the HPU.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 44
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
The associated HMI data (RMR_BASIC folder) can now be copied to the…/oem/sinumerik/hmi directory:
Figure -4-14 Connection established with WinSCP (PG left, SINUMERIK right, CF card)Copy the RMR_BASIC folder to the CF card
To make the dialog window callable, it must be ”linked” into the Operate menu.This requires customization of the system configuration.Switch to the …/oem/sinumerik/hmi/cfg (CF cards) folder and open thesystemconfiguration.ini file.Also open the same file of the application example. It contains only the followinglines:
[oem_dirs]
OEM_1=RMR_BASIC
;OEM_2=RMR_ROBODIAG
;OEM_3=RMR_HANDLING
;OEM_4=RMR_MACHINING
Copy the code from the sample file and add it to the (NC cards) systemconfiguration. If you are already using other modules (e.g. RMR_BASIC), you mustremove the semicolon of the associated application, e.g.
[...] ; something
[oem_dirs]
OEM_1=RMR_BASIC
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 45
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
OEM_2=RMR_ROBODIAG
OEM_4=RMR_MACHINING
[...] ; this contains the remainder of systemconfiguration.ini
Restart the SINUMERIK to start the modules at the next startup.
4 PLC Sample-Project
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 46
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
4.6 Operate: Converting and importing alarm messages
To allow errors to be displayed with an appropriate message, alarm texts must becreated, generated and imported. This documentation uses the alarm textconverter that works with two folders (source and target). The source foldercontains unformatted message text created manually. After the conversion, thetarget folder contains the files relevant for the NC that can be uploaded:Figure 4-15 Alarm text converter with source and target
The creation of alarm messages is described on the DocOnWeb/CD:SINUMERIK 840D sl manufacturer/serviceCommissioning the base software and operating softwareConfiguring alarms
The conversion is performed by executing HMI_AlarmTextConvGui.exe. The files cannow be transferred to the NC. The content of the target folder (here cfg and lng) iscopied to the …/user/sinumerik/hmi and …/oem/sinumerik/hmi directory,respectively. Existing message text is overwritten.
Restart the NC and Operate to use the message text.
Figure 4-16 Uploading the converted message text
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 47
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
5 Robot diagnostics (RoboDiag)5.1 UDP connection between NC and robots
Because no direct connection exists between the robots and Operate, the robotbase example must be extended with the RoboDiag package. This allows KRCmessages to be displayed in a communications screen form and commands (e.g.clock synchronization) to be sent to the KRC.
Figure 5-1 RoboDiag communication: KUKA messages arrive in the PLC/SINUMERIK viaX150 and are forwarded to the HMI via X120.
PN (X150)
IE (X120)
SIN
UM
ERIK
840D
slHMI (Operator Panel)
KUKA (KRC)
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 48
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
5.2 PLC: Customizations for RoboDiag
Open the provided sample application.
Figure 5-2 PLC extension for the RoboDiag communication
Copy all necessary blocks, (see figure 5-2, but without OB1) to the main project.Check whether further customizations are required beforehand so that no data isoverwritten. Overwriting SFBs/SFCs does not normally represent any problem.Also integrate the UDP library symbols in your main project as well as the examplecall of the UDP blocks in the OB1.
ATTENTION Do not overwrite the symbols or the OB1 of your main project
Because copying and inserting overwrites the existing elements, copy only thecontent of the associated objects and add the new information to the existingcontent.
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 49
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
5.3 Block descriptionTable 5-1 Library blocks
Block Name Note
OB1 ObCyclExc Contains example call for UDPcommunication
FB460 FbRmrRoboDiag Main block for RoboDiagcommunication (each robot hasits own call)
FB465 – FB468 FbCommTxxx Siemens FBs (originally: FB65-68)
DB450 DbRmrRoboDiagComm1 Diagnostc-data andconfiguration (each robot has itsown DB)
DB460 DbInstRmrRoboDiag1 Instance block of the FB460UDT450 UdpRmrRoboDiag UDT of the DB450SFBs/SFCs Sfb/cxxx System functions
Note The freely selectable configuration DB (in the RoboDiag library, for exampleDB450) must be created as DB of the UdpRmrRoboDiag (UDT 450) data type(see UDP example implementation subsection).
ATTENTION Changing the numbering/designation
The block designations and numbers can and may need to be changed so thatthe content of the target project is not overwritten.You must, however, also customize the updates of the block librariesappropriately. Consider whether it would be better to change the block numbersof the target project in order to minimize future effort.The numbers of the Siemens FBs (FB465-468) may not be changed.
5.4 RoboDiag example implementation
A RoboDiag connection is defined in the following example.The connection data and information is handled by the DB 450. This was createdas a DB derived from the “UDT 450” data type (see figure). An associated DB mustbe created for each additional UDP connection. The same DB may not to be usedfor different UDP connections!The associated outputs can be evaluated optionally for each UDP connection (seefigure 5-4, network 7).
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 50
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 5-3 Creating a DB of the UDT450 type
Figure -5-4 Implementation of the RoboDiag instance
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 51
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
The connection data must be stored in the associated DB, e.g. DB 450 for the firstchannel/robot:
· channel· udp_rcv_port· udp_send_port
The connection data is normally entered once from the UDP communicationsscreen form (see also section HMI: Explanation of the UDP user interface).Consequently, these entries do not need to be filled via Step7.
Table 5-2 DB 450 (UDT 450) in shortened form with sample data (e.g. from the HMI)
Name Type Examplevalue
Description
last_no_received INT LF number of the lastmessage text
channel INT 1 Channel numberudp_rcv_port INT 9050 PLC port numberudp_send_port INT 9050 KRC port numberlanguage STRING[3] Language code for KRCOrder.GetAllKrcMessages BOOL Set “GetAllKrcMessages”
orderOrder.job_xy[…] BOOL Further orders… …msg[0].no INT LF number… …msg[0].message STRING[250] Content… …
Proceed similarly for further channels (robots). The channel number would then be2, 3, …; a different DB number (i.e. other than DB450) must be used for eachadditional robot.The KRC or another application can now use the “192.168.abc.xyz: udp_rcv_port”connection information to send data to the PLC. In the reverse direction, it sendslanguage and order codes to the “IP of the source: udp_send_port“. This assumesthat the KRC system first sends the UDP data. The PLC then uses this data toobtain the required target IP.The HMI uses the LF number to determine and represent the last valid messagefrom the message buffer.If the language is changed in HMI Operate or at least an order bit is set, thecontroller sends a defined string to the KRC that interprets it appropriately:
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 52
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
5.5 RoboDiag error messages
A maximum of four error types are differentiated for each UDP connection:
Table 5-3 Error messages
Name Type Description
ErrTCON Bool Error when establishing the connectionErrTDISCON Bool Error when disconnecting the connectionErrTUSEND Bool Error when sending order dataErrTURCV Bool Error when receiving KRC data
If required, a detailed evaluation can be performed by the assigned instance datablock via the status values of the associated FBs. Because these are officialSiemens FBs, they are documented completely in the Step 7 help.
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 53
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
5.6 Operate: Customizations for RoboDiag communication
To make the functions also visible on the user interface, the communicationsscreen form must be integrated in Operate.The changes can be managed directly in HMI Operate via the NC file manager.Alternatively, proceed as described above.An FTP program (e.g. WinSCP) establishes a connection between theprogramming device and SINUMERIK in order to access the data structures on theCF card.The associated HMI data (RMR_ROBODIAG folder) can now be copied into the…/oem/sinumerik/hmi directory:
Figure -5-5 Connection established with WinSCP (left PG; right SINUMERIK, CF card)Copy the RMR_ROBODIAG folder to the CF card
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 54
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
The communications information must also be specified at this location using theRMR_ROBODIAG/cfg/robot.xml file. Open the XML file with any text editor andcustomize it (as shown as example here). Each robot/UDP connection has its ownentry:· data = communications block number in the PLC (from the UDT450)· sendport = send port· recvport = receive port· channel = associated NC channel· alarmid = unique Alarm ID normally specified in ascending order
(range: 130000 – 130009)·Figure 5-6 Sample configuration of the robot.xml file
You may then need to upload this file again (…/oem/sinumerik/hmi/RMR_ROBODIAG/cfg/robot.xml).
To make the dialog window callable, it must be ”linked” into the Operate menu.This requires customization of the system configuration.Switch to the …/oem/sinumerik/hmi/cfg (CF cards) folder and open thesystemconfiguration.ini file.Also open the same file of the application example. It contains only the followinglines:
[oem_dirs]
;OEM_1=RMR_BASIC
OEM_2=RMR_ROBODIAG
;OEM_3=RMR_HANDLING
;OEM_4=RMR_MACHINING
Copy the code from the sample file and add it to the (NC cards) systemconfiguration. If you are already using other modules (e.g. RMR_BASIC), you mustremove the semicolon of the associated application, e.g.
[... ] ; something
[oem_dirs]
OEM_1=RMR_BASIC
OEM_2=RMR_ROBODIAG
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 55
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
;OEM_3=RMR_HANDLING
OEM_4=RMR_MACHINING
[...] ; this contains the remainder of systemconfiguration.ini
Restart the SINUMERIK to start the modules at the next startup.
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 56
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
5.7 KRC: Customizations for RoboDiag communication
A customization must also be made to the KRC in order for the robot tocommunicate. Follow the shown figures. Please refer to the associated KUKAdocumentation for details.
Figure 5-7 Open the configuration screen form for KRmsgNET from Commissioning >Service > KRmsgNET in the main menu
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 57
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 5-8 Customize the values appropriately for the performed configuration and ensurethat no checkmark is set for the Info and Event filter classes as shown in the figure
5 Robot diagnostics (RoboDiag)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 58
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
5.7.1 Operate: Functions and explanation of the RoboDiag user interface
The new user interface is reached from “Diagnostics > Robo. Diag“. All messagesfrom the KRC are displayed there. In addition to the error text, the date, channeland error number are also displayed.
Figure 5-9 RoboDiag messages from the KRC in Operate
The RoboDiag program can change the system language of the KUKA system withan NC language switching provided it exists (English is used as default for missinglanguage packages and multi-byte languages (e. g. Chinese) as well). The timeand date are also set and synchronized automatically every five minutes.
6 Parameter assignment of an NC channel for robots with CreateMyConfig (CMC)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 59
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
6 Parameter assignment of an NC channelfor robots with CreateMyConfig (CMC)
6.1 GeneralThe objective of the commissioning with CMC is to automate the import of thecompile cycles, associated alarm texts, HMI data as well as the general and robot-type dependent NC machine data. The CMC package supports the followingapplication scenarios:
1. New installation: A robot is installed in the first channel.2. Retrofit an existing machine: for example, a machine tool is available in the
first channel and the robot is installed in the nth channel (2 < n <= 10).3. Update an existing installation: the transformation and axis data of the robot
can be replaced in an existing robot channel. CMC updates only the valuescontained in RMRM_readKUKA.ini. This function can be used, for example,when a robot is replaced but no other data (e.g. communication, safety)changes.
The CMC package includes the following steps:· Fetch the robot-type dependent KUKA machine data from the KR C4 and
convert it to NC machine data (transformation and axis data inRMRM_readKUKA.ini).
· Import the application-specific NC machine data (general, channel, axis).· Copy and parameterize the RODI and ROBX compile cycles as well as the
associated alarm text.· Copy the required HMI data to the CF card. The content of the folder
…\oem\sinumerik\hmi\RMR_BASIC must be copied manually and must beadapted to the customer specific needs.
General conditions of the CMC package:· Prior to the installation, CMC creates a machine archive (NC, DP, PLC) and
saves it on the USB stick.· After the installation, CMC creates a log file and saves it in the root directory on
the USB stick.· Only the installation of 6-axis robots without supplementary axes is supported.· The RODI and ROBX compile cycles are preliminary versions, i.e. they must
be replaced with the official versions after the successful machine test. Theofficial version requires signing the machine-specific release document and thesetting of the appropriate option bits.
· Machine-axis gaps are permitted, but channel-axis gaps are not.· All safety machine data must be entered separately (see Chapter 8).· HMI data must be copied manually if a PCU50 is deployed.· A multi-channel installation is possible by executing the CMC package more
than once (e.g. one robot in the 1st channel and one further robot in the 4thchannel).
6 Parameter assignment of an NC channel for robots with CreateMyConfig (CMC)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 60
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
6.2 Configuring the installation in “RMR_M.ini”
The commissioning engineer uses the “RMR_M.ini” file to specify before thecommissioning which data areas are used on the NCU. CMC checks the values forplausibility (value range violation) during the installation and issues a prompt ifspecific areas are already assigned. The following table lists all variables (defaultvalues) of the ini file.Table 6-1
Variable Explanation
Up.chan_num_rob1 = 1 ;Channel number (1-10)
Up.bag_num_rob1 = 1 ;Mode group number (1-2)
Up.machax_rob1_num1 = 1 ;Machine-axis number (1-31) of the 1st robot axis,for example, the$MN_AXCONF_MACHAX_NAME_TAB[0] addresscorresponds to input value 1
Up.machax_rob1_num2 = 2 ;Machine-axis number (1-31) of the 2nd robot axis,for example, the$MN_AXCONF_MACHAX_NAME_TAB[1] addresscorresponds to input value 2
Up.machax_rob1_num3 = 3 ;Machine-axis number (1-31) of the 3rd robot axis,for example, the$MN_AXCONF_MACHAX_NAME_TAB[2] addresscorresponds to input value 3
Up.machax_rob1_num4 = 4 ;Machine-axis number (1-31) of the 4th robot axis,for example, the$MN_AXCONF_MACHAX_NAME_TAB[3] addresscorresponds to input value 4
Up.machax_rob1_num5 = 5 ;Machine-axis number (1-31) of the 5th robot axis,for example, the$MN_AXCONF_MACHAX_NAME_TAB[4] addresscorresponds to input value 5
Up.machax_rob1_num6 = 6 ;Machine-axis number (1-31) of the 6th robot axis,for example, the$MN_AXCONF_MACHAX_NAME_TAB[5] addresscorresponds to input value 6
Up.DPIO_idx = 0 ;DPIO start index (0-30) of the MD$MN_DPIO_LOGIC_ADDRESS_IN[] and$MN_DPIO_LOGIC_ADDRESS_OUT[] - they mustbe identical for input and output
Up.DPIO_adr_in = 214 ;Start address (0-16383) of the PROFINET receiveaddress range for KR C4 – actual values - see HWConfig
Up.DPIO_adr_out = 214 ;Start address (0-16383) of the PROFINET sendaddress range for KR C4 – set values - see HWConfig
Up.DPIO_adr_sync = 200 ;Start address (0-16383) of the PROFINET receive
6 Parameter assignment of an NC channel for robots with CreateMyConfig (CMC)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 61
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Variable Explanationaddress range for KR C4 - see HW Config
Up.DBD_idx = 3584 ; Start index (0-3975) for the $A_DBD area. Therequired length of the data area is 120 bytes.Consequently, the largest possible start address of4095 is reduced by 120. This gives 3975.
Up.pcu = 0 ;PCU present = 1, PCU not present = 0
up.advanced_surface = 1 ;Install Advanced Surface data? 1 = yes, 0 = no
The following table specifies which variables are necessary or valid for theindividual installation types:Table 6-2
Variable Newinstallation
Retrofit Update
Up.chan_num_rob1 = 1 X X X
Up.bag_num_rob1 = 1 X X
Up.machax_rob1_num1 = 1 X X
Up.machax_rob1_num2 = 2 X X
Up.machax_rob1_num3 = 3 X X
Up.machax_rob1_num4 = 4 X X
Up.machax_rob1_num5 = 5 X X
Up.machax_rob1_num6 = 6 X X
Up.DPIO_idx = 0 X X
Up.DPIO_adr_in = 214 X X
Up.DPIO_adr_out = 214 X X
Up.DPIO_adr_sync = 200 X X
Up.DBD_idx = 3584 X X
Up.pcu = 0 X X
up.advanced_surface = 1 X X X
6.3 Commissioning sequence
Preconditions for commissioning:· The KUKA robot is operational, i.e. the configuration for the concrete robot type
was created in Workvisual and transferred to the KR C4· The password for expert mode in the KR C4 is known· The NCU software is not export version
6 Parameter assignment of an NC channel for robots with CreateMyConfig (CMC)
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 62
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
· NCU software >= 4.7 SP1· The PLC hardware configuration has been created (see Chapter 3)· The PLC blocks have been imported (see Chapter 4)
The following steps are required for the installation: Steps (2) – (11) are alsoavailable as video in the “doc” folder.1. Copy the content of the CMC package from the “cmc” folder to the root
directory (e.g. F:\) of a USB stick.
Figure 6-1: Content of CMC package.
2. If necessary, customize the “RMR_M.ini” file for your robot installation.3. Insert the USB stick into a USB port of the KR C4 cabinet (not Smart Pad).4. Take your Smart Pad and follow these steps:
4.1 Switch to T1 mode.4.2 Login with the “Expert” user group (Configuration à “Expert” user
group; standard password: kuka).4.3 Minimize the HMI (Installation and Startupà Servicingà minimize
HMI.4.4 Open an Explorer window (Windows start icon à Computer).4.5 Click the root directory of the USB stick.4.6 Double-click the “readKUKA Execution.bat” batch file.
à The “RMRM_readKUKA.ini” file will be created in the root directory ofthe USB stick.
4.7 Close the Explorer window.4.8 Maximize the Smart HMI.4.9 Switch to EXT mode.
5. Remove the USB stick.6. Insert the USB stick into a USB socket (X125 or X135) of the NCU.7. Switch the control system off and on again.8. Follow the instructions on the screen.9. Remove the USB stick.10. Switch the control system off and on again. After being switched on, the
reinstallation/retrofit/update of the robot channel is completed and the machineis operational again.
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 63
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
7 Machine dataThis chapter describes all machine data required for “RMR/machining”. All dataspecified in the “Value” column applies to the “new installation” application.Machine data written bold indicates that it is parameterized by CMC (Chapter 6)based on the application and the robot type.
7.1 General machine dataTable 7-1
Machine data Value Unit CommentN10000 $MN_AXCONF_MACHAX_NAME_TAB[0] = "RA11"N10000 $MN_AXCONF_MACHAX_NAME_TAB[1] = "RA12"N10000 $MN_AXCONF_MACHAX_NAME_TAB[2] = "RA13"N10000 $MN_AXCONF_MACHAX_NAME_TAB[3] = "RA14"N10000 $MN_AXCONF_MACHAX_NAME_TAB[4] = "RA15"N10000 $MN_AXCONF_MACHAX_NAME_TAB[5] = "RA16"N10061 $MN_POSCTRL_CYCLE_TIME = 0.002 sN10070 $MN_IPO_SYSCLOCK_TIME_RATIO = 2N10071 $MN_IPO_CYCLE_TIME = 0.004 sN10200 $MN_INT_INCR_PER_MM = 100000N10210 $MN_INT_INCR_PER_DEG = 100000N10385 $MN_PROFISAFE_MASTER_ADDRESS[0]= 'H50007d0'N10386 $MN_PROFISAFE_IN_ADDRESS[0]= 'H500012c'N10387 $MN_PROFISAFE_OUT_ADDRESS[0]= 'H500012c'N10387 $MN_PROFISAFE_OUT_ADDRESS[1]= 'H501012c'N10388 $MN_PROFISAFE_IN_ASSIGN[0]= 33040N10389 $MN_PROFISAFE_OUT_ASSIGN[0]= 33040N10389 $MN_PROFISAFE_OUT_ASSIGN[1]= 41041N13300 $MN_PROFISAFE_IN_FILTER[0]= 'H10cf1'N13301 $MN_PROFISAFE_OUT_FILTER[0]= 'H3023e'N13301 $MN_PROFISAFE_OUT_FILTER[1]= 'H10000'N13308 $MN_PROFISAFE_IN_NAME[0]= "KRC"N13309 $MN_PROFISAFE_OUT_NAME[0]= "KRC"N13309 $MN_PROFISAFE_OUT_NAME[1]= "KRC"N10500 $MN_DPIO_LOGIC_ADDRESS_IN[0]= 214N10501 $MN_DPIO_RANGE_LENGTH_IN[0]= 128N10502 $MN_DPIO_RANGE_ATTRIBUTE_IN[0]= 'H4'N10510 $MN_DPIO_LOGIC_ADDRESS_OUT[0]= 214N10510 $MN_DPIO_LOGIC_ADDRESS_OUT[1]= 200N10511 $MN_DPIO_RANGE_LENGTH_OUT[0]= 128N10511 $MN_DPIO_RANGE_LENGTH_OUT[1]= 1N10512 $MN_DPIO_RANGE_ATTRIBUTE_OUT[0]= 'H2'N10512 $MN_DPIO_RANGE_ATTRIBUTE_OUT[1]= 'H2'
N17400 $MN_OEM_GLOBAL_INFO[0] = "RunMyRobot/Machining"
N18080 $MN_MM_TOOL_MANAGEMENT_MASK = 'H2'N19110 $ON_NUM_IPO_AXES = 31N19300 $ON_COMP_MASK = 'H1'N19410 $MN_TRAFO_TYPE_MASK = 'H10'
N19610 $MN_TECHNO_EXTENSION_MASK[3] = 'H4000000'
Required forthe releasedROBX/RODIversion
N51039 $MNS_PROGRAM_CONTROL_MODE_MASK = 'H0'
N60959 $MN_CC_ACTIVE_IN_CHAN_ROBX[0] = 'H1'Activationin the 1stchannel
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 64
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Machine data Value Unit CommentN60959 $MN_CC_ACTIVE_IN_CHAN_ROBX[1] = 'H0'N60959 $MN_CC_ACTIVE_IN_CHAN_ROBX[2] = 'H0'
N60996 $MN_CC_ACTIVE_IN_CHAN_RODI[0] = 'H1'Activationin the 1stchannel
N60996 $MN_CC_ACTIVE_IN_CHAN_RODI[1] = 'H0'N60996 $MN_CC_ACTIVE_IN_CHAN_RODI[2] = 'H0'
N61650 $MN_CC_RODI_RC_NC_IPOTIME_RATIO = 3NCU to KRCIPO cycleratio
N61651 $MN_CC_RODI_SYNC_SIG_CYCLE_MASK = 'H2'
7.2 Channel-specific machine dataTable 7-2
Machine data Value Unit CommentN20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[0] = 0N20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[1] = 0N20050 $MC_AXCONF_GEOAX_ASSIGN_TAB[2] = 0N20070 $MC_AXCONF_MACHAX_USED[0] = 1N20070 $MC_AXCONF_MACHAX_USED[1] = 2N20070 $MC_AXCONF_MACHAX_USED[2] = 3N20070 $MC_AXCONF_MACHAX_USED[3] = 4N20070 $MC_AXCONF_MACHAX_USED[4] = 5N20070 $MC_AXCONF_MACHAX_USED[5] = 6N20080 $MC_AXCONF_CHANAX_NAME_TAB[0] = "RA1"N20080 $MC_AXCONF_CHANAX_NAME_TAB[1] = "RA2"N20080 $MC_AXCONF_CHANAX_NAME_TAB[2] = "RA3"N20080 $MC_AXCONF_CHANAX_NAME_TAB[3] = "A"N20080 $MC_AXCONF_CHANAX_NAME_TAB[4] = "B"N20080 $MC_AXCONF_CHANAX_NAME_TAB[5] = "C"N20110 $MC_RESET_MODE_MASK = 'H45'N20140 $MC_TRAFO_RESET_VALUE = 1N20150 $MC_GCODE_RESET_VALUES[0] = 2N20150 $MC_GCODE_RESET_VALUES[20] = 2N20150 $MC_GCODE_RESET_VALUES[49] = 3N20152 $MC_GCODE_RESET_MODE[5] = 1N20152 $MC_GCODE_RESET_MODE[7] = 1N20310 $MC_TOOL_MANAGEMENT_MASK = 'H2'N21100 $MC_ORIENTATION_IS_EULER = 0N21102 $MC_ORI_DEF_WITH_G_CODE = 1N21104 $MC_ORI_IPO_WITH_G_CODE = 1N21120 $MC_ORIAX_TURN_TAB_1[0] = 1N21120 $MC_ORIAX_TURN_TAB_1[1] = 2N21120 $MC_ORIAX_TURN_TAB_1[2] = 3N24030 $MC_FRAME_ACS_SET = 1N24100 $MC_TRAFO_TYPE_1 = 4100N24110 $MC_TRAFO_AXES_IN_1[0] = 1N24110 $MC_TRAFO_AXES_IN_1[1] = 2N24110 $MC_TRAFO_AXES_IN_1[2] = 3N24110 $MC_TRAFO_AXES_IN_1[3] = 4N24110 $MC_TRAFO_AXES_IN_1[4] = 5N24110 $MC_TRAFO_AXES_IN_1[5] = 6N24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1[0] = 1N24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1[1] = 2N24120 $MC_TRAFO_GEOAX_ASSIGN_TAB_1[2] = 3N24130 $MC_TRAFO_INCLUDES_TOOL_1 = 1
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 65
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Machine data Value Unit CommentN24585 $MC_TRAFO5_ORIAX_ASSIGN_TAB_1[0] = 4N24585 $MC_TRAFO5_ORIAX_ASSIGN_TAB_1[1] = 5N24585 $MC_TRAFO5_ORIAX_ASSIGN_TAB_1[2] = 6N21106 $MC_CART_JOG_SYSTEM = 'H7'N21150 $MC_JOG_VELO_RAPID_ORI[0] = 4 RpmN21150 $MC_JOG_VELO_RAPID_ORI[1] = 4 RpmN21150 $MC_JOG_VELO_RAPID_ORI[2] = 4 RpmN21155 $MC_JOG_VELO_ORI[0] = 2 RpmN21155 $MC_JOG_VELO_ORI[1] = 2 RpmN21155 $MC_JOG_VELO_ORI[2] = 2 RpmN21158 $MC_JOG_JERK_ORI[0] = 2 Rev/s³N21158 $MC_JOG_JERK_ORI[1] = 2 Rev/s³N21158 $MC_JOG_JERK_ORI[2] = 2 Rev/s³N21159 $MC_JOG_JERK_ORI_ENABLE[0] = 1N21159 $MC_JOG_JERK_ORI_ENABLE[1] = 1N21159 $MC_JOG_JERK_ORI_ENABLE[2] = 1N21160 $MC_JOG_VELO_RAPID_GEO[0] = 10000 mm/minN21160 $MC_JOG_VELO_RAPID_GEO[1] = 10000 mm/minN21160 $MC_JOG_VELO_RAPID_GEO[2] = 10000 mm/minN21165 $MC_JOG_VELO_GEO[0] = 2000 mm/minN21165 $MC_JOG_VELO_GEO[1] = 2000 mm/minN21165 $MC_JOG_VELO_GEO[2] = 2000 mm/minN21166 $MC_JOG_ACCEL_GEO[0] = 2 m/s²N21166 $MC_JOG_ACCEL_GEO[1] = 2 m/s²N21166 $MC_JOG_ACCEL_GEO[2] = 2 m/s²N21168 $MC_JOG_JERK_GEO[0] = 5 1/s³N21168 $MC_JOG_JERK_GEO[1] = 5 1/s³N21168 $MC_JOG_JERK_GEO[2] = 5 1/s³N21170 $MC_ACCEL_ORI[0] = 2 Rev/s²N21170 $MC_ACCEL_ORI[1] = 2 Rev/s²N21170 $MC_ACCEL_ORI[2] = 2 Rev/s²
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 66
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
7.2.1 CC ROBX (ROBot transformation eX)
The ROBX version 4.2 or newer is used within this product. The following machinedata are those applicable to the KUKA KR300 R2500 Quantec robot type. The dataare read from the KUKA KR C4 control system during the installation via CMC(Chapter 6) and are contained in the RMRM_readKUKA.ini file.
Table 7-3
Machine data Value Unit CommentN62900 $MC_ROBX_KINCLASS = 1N62901 $MC_ROBX_AXES_TYPE[0] = 3N62901 $MC_ROBX_AXES_TYPE[1] = 3N62901 $MC_ROBX_AXES_TYPE[2] = 3N62901 $MC_ROBX_AXES_TYPE[3] = 3N62901 $MC_ROBX_AXES_TYPE[4] = 3N62901 $MC_ROBX_AXES_TYPE[5] = 3N62902 $MC_ROBX_SPECIAL_KIN = 1N62903 $MC_ROBX_MAIN_AXES = 3N62904 $MC_ROBX_WRIST_AXES = 2N62905 $MC_ROBX_NUM_AXES = 6N62906 $MC_ROBX_A4PAR = 0N62907 $MC_ROBX_MAIN_LENGTH_AB[0] = 350 mmN62907 $MC_ROBX_MAIN_LENGTH_AB[1] = 1150 mmN62908 $MC_ROBX_TX3P3_POS[0] = 1000 mmN62908 $MC_ROBX_TX3P3_POS[1] = 0 mmN62908 $MC_ROBX_TX3P3_POS[2] = -41 mmN62909 $MC_ROBX_TX3P3_RPY[0] = 0 degreesN62909 $MC_ROBX_TX3P3_RPY[1] = 90 degreesN62909 $MC_ROBX_TX3P3_RPY[2] = 0 degreesN62910 $MC_ROBX_TFLWP_POS[0] = 0 mmN62910 $MC_ROBX_TFLWP_POS[1] = 0 mmN62910 $MC_ROBX_TFLWP_POS[2] = 240 mmN62911 $MC_ROBX_TFLWP_RPY[0] = 180 degrees Flange COSN62911 $MC_ROBX_TFLWP_RPY[1] = 0 degrees Flange COSN62911 $MC_ROBX_TFLWP_RPY[2] = 180 degrees Flange COSN62912 $MC_ROBX_TIRORO_POS[0] = 0 mmN62912 $MC_ROBX_TIRORO_POS[1] = 0 mmN62912 $MC_ROBX_TIRORO_POS[2] = 675 mmN62913 $MC_ROBX_TIRORO_RPY[0] = 0 degrees Foot COSN62913 $MC_ROBX_TIRORO_RPY[1] = 0 degrees Foot COSN62913 $MC_ROBX_TIRORO_RPY[2] = 0 degrees Foot COSN62914 $MC_ROBX_DHPAR4_5A[0] = 0 degreesN62914 $MC_ROBX_DHPAR4_5A[1] = 0 degreesN62915 $MC_ROBX_DHPAR4_5D[0] = 0 degreesN62915 $MC_ROBX_DHPAR4_5D[1] = 0 degreesN62916 $MC_ROBX_DHPAR4_5ALPHA[0] = -90 degreesN62916 $MC_ROBX_DHPAR4_5ALPHA[1] = 90 degreesN62917 $MC_ROBX_MAMES[0] = 0 degreesN62917 $MC_ROBX_MAMES[1] = 0 degreesN62917 $MC_ROBX_MAMES[2] = 0 degreesN62917 $MC_ROBX_MAMES[3] = 0 degreesN62917 $MC_ROBX_MAMES[4] = 0 degreesN62917 $MC_ROBX_MAMES[5] = 0 degreesN62918 $MC_ROBX_AXES_DIR[0] = -1N62918 $MC_ROBX_AXES_DIR[1] = 1N62918 $MC_ROBX_AXES_DIR[2] = 1N62918 $MC_ROBX_AXES_DIR[3] = -1
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 67
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Machine data Value Unit CommentN62918 $MC_ROBX_AXES_DIR[4] = 1N62918 $MC_ROBX_AXES_DIR[5] = -1N62919 $MC_ROBX_DIS_WRP = 10N62920 $MC_ROBX_AXIS_SEQ[0] = 1N62920 $MC_ROBX_AXIS_SEQ[1] = 2N62920 $MC_ROBX_AXIS_SEQ[2] = 3N62920 $MC_ROBX_AXIS_SEQ[3] = 4N62920 $MC_ROBX_AXIS_SEQ[4] = 5N62920 $MC_ROBX_AXIS_SEQ[5] = 6N62929 $MC_ROBX_VELCP[0] = 60000 mm/minN62929 $MC_ROBX_VELCP[1] = 60000 mm/minN62929 $MC_ROBX_VELCP[2] = 60000 mm/minN62930 $MC_ROBX_ACCCP[0] = 4 m/s²N62930 $MC_ROBX_ACCCP[1] = 4 m/s²N62930 $MC_ROBX_ACCCP[2] = 4 m/s²N62931 $MC_ROBX_VELORI[0] = 6 RpmN62931 $MC_ROBX_VELORI[1] = 6 RpmN62931 $MC_ROBX_VELORI[2] = 6 RpmN62932 $MC_ROBX_ACCORI[0] = 4 Rev/s²N62932 $MC_ROBX_ACCORI[1] = 4 Rev/s²N62932 $MC_ROBX_ACCORI[2] = 4 Rev/s²N62934 $MC_ROBX_DYN_LIM_REDUCE = 1N62935 $MC_ROBX_VEL_FILTER_TIME = 0.024 sN62936 $MC_ROBX_CC_TOA_START_NUM = -1N62948 $MC_ROBX_TFL_EXT_RPY[0] = 0N62948 $MC_ROBX_TFL_EXT_RPY[1] = 0N62948 $MC_ROBX_TFL_EXT_RPY[2] = 0N62949 $MC_ROBX_TOOL_DIR = 1
7.2.2 CC RODI (RObot Drive Interface)
The following machine data are those applicable to the KUKA KR300 R2500Quantec robot type. The data are read from the KUKA KR C4 control systemduring the installation via CMC (Chapter 6) .
Table 7-4
Machine data Value Unit CommentN62955 $MC_CC_RODI_DPIO_START_INDEX = 0N62956 $MC_CC_RODI_A_DBD_START_INDEX = 3584N62958 $MC_CC_RODI_SYNC_SIG_OUT_ASSIGN = 1N62959 $MC_RODI_CHANAX_ASSIGN_TAB[1] = 1N62959 $MC_RODI_CHANAX_ASSIGN_TAB[2] = 2N62959 $MC_RODI_CHANAX_ASSIGN_TAB[3] = 3N62959 $MC_RODI_CHANAX_ASSIGN_TAB[4] = 4N62959 $MC_RODI_CHANAX_ASSIGN_TAB[5] = 5N62959 $MC_RODI_CHANAX_ASSIGN_TAB[6] = 6N62959 $MC_RODI_CHANAX_ASSIGN_TAB[7] = 0N62959 $MC_RODI_CHANAX_ASSIGN_TAB[8] = 0N62959 $MC_RODI_CHANAX_ASSIGN_TAB[9] = 0N62959 $MC_RODI_CHANAX_ASSIGN_TAB[10] = 0N62959 $MC_RODI_CHANAX_ASSIGN_TAB[11] = 0N62959 $MC_RODI_CHANAX_ASSIGN_TAB[12] = 0
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 68
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Machine data Value Unit Comment
N62960 $MC_CC_RODI_COMP_ACTIVE = 1
1 = KUKAcompensation on0 = KUKAcompensation off
N62961 $MC_CC_RODI_COMP_VEL = 0.2 RpmN62963 $MC_CC_RODI_COMP_LIMIT = 2 degrees
7.3 Axis-specific machine dataThe following machine data are those applicable to the KUKA KR300 R2500Quantec robot type The data are read from the KUKA KR C4 control system duringthe installation via CMC (Chapter 6) from the KUKA KR C4 control system andconverted appropriately. The axis dynamic response is matched to the associatedrobot type and is monitored by the KR C4.
7.3.1 RA11 axis
Table 7-5
Machine data Value Unit CommentN30130 $MA_CTRLOUT_TYPE[0,AX1] = 0N30132 $MA_IS_VIRTUAL_AX[AX1] = 0N30240 $MA_ENC_TYPE[0,AX1] = 0N30240 $MA_ENC_TYPE[1,AX1] = 0N30300 $MA_IS_ROT_AX[AX1] = 1N30350 $MA_SIMU_AX_VDI_OUTPUT[AX1] = 1N32000 $MA_MAX_AX_VELO[AX1] = 17.5 RpmN32010 $MA_JOG_VELO_RAPID[AX1] = 4 RpmN32020 $MA_JOG_VELO[AX1] = 2 Rpm
N32200 $MA_POSCTRL_GAIN[0,AX1] = 8KUKA drivemodelconstruction
N32200 $MA_POSCTRL_GAIN[1,AX1] = 8N32200 $MA_POSCTRL_GAIN[2,AX1] = 8N32200 $MA_POSCTRL_GAIN[3,AX1] = 8N32200 $MA_POSCTRL_GAIN[4,AX1] = 8N32200 $MA_POSCTRL_GAIN[5,AX1] = 8N32300 $MA_MAX_AX_ACCEL[0,AX1] = 0.29 Rev/s²N32300 $MA_MAX_AX_ACCEL[1,AX1] = 0.29 Rev/s²N32300 $MA_MAX_AX_ACCEL[2,AX1] = 0.29 Rev/s²N32300 $MA_MAX_AX_ACCEL[3,AX1] = 0.29 Rev/s²N32300 $MA_MAX_AX_ACCEL[4,AX1] = 0.29 Rev/s²N32420 $MA_JOG_AND_POS_JERK_ENABLE[AX1] = 1N32430 $MA_JOG_AND_POS_MAX_JERK[AX1] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[0,AX1] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[1,AX1] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[2,AX1] = 10 Rev/s³N32431 $MA_MAX_AX_JERK[3,AX1] = 4 Rev/s³N32431 $MA_MAX_AX_JERK[4,AX1] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[0,AX1] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[1,AX1] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[2,AX1] = 10 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[3,AX1] = 4 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[4,AX1] = 2 Rev/s³N32620 $MA_FFW_MODE[AX1] = 0
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 69
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Machine data Value Unit CommentN32630 $MA_FFW_ACTIVATION_MODE[AX1] = 0N32890 $MA_DESVAL_DELAY_ENABLE[AX1] = 1
N32895 $MA_DESVAL_DELAY_TIME[AX1] = 0.042828 s
PROFINETcommunication delaytime andKUKA IPOcycle
N36000 $MA_STOP_LIMIT_COARSE[AX1] = 0.01 degreeN36010 $MA_STOP_LIMIT_FINE[AX1] = 0.005 degreeN36100 $MA_POS_LIMIT_MINUS[AX1] = -183 degreeN36110 $MA_POS_LIMIT_PLUS[AX1] = 183 degreeN36200 $MA_AX_VELO_LIMIT[0,AX1] = 20.125 RpmN36200 $MA_AX_VELO_LIMIT[1,AX1] = 20.125 RpmN36200 $MA_AX_VELO_LIMIT[2,AX1] = 20.125 RpmN36200 $MA_AX_VELO_LIMIT[3,AX1] = 20.125 RpmN36200 $MA_AX_VELO_LIMIT[4,AX1] = 20.125 RpmN36200 $MA_AX_VELO_LIMIT[5,AX1] = 20.125 Rpm
7.3.2 RA12 axis
Table 7-6
Machine data Value Unit CommentN30130 $MA_CTRLOUT_TYPE[0,AX2] = 0N30132 $MA_IS_VIRTUAL_AX[AX2] = 0N30240 $MA_ENC_TYPE[0,AX2] = 0N30240 $MA_ENC_TYPE[1,AX2] = 0N30300 $MA_IS_ROT_AX[AX2] = 1N30350 $MA_SIMU_AX_VDI_OUTPUT[AX2] = 1N32000 $MA_MAX_AX_VELO[AX2] = 16.8 RpmN32010 $MA_JOG_VELO_RAPID[AX2] = 4 RpmN32020 $MA_JOG_VELO[AX2] = 2 RpmN32200 $MA_POSCTRL_GAIN[0,AX2] = 8N32200 $MA_POSCTRL_GAIN[1,AX2] = 8N32200 $MA_POSCTRL_GAIN[2,AX2] = 8N32200 $MA_POSCTRL_GAIN[3,AX2] = 8N32200 $MA_POSCTRL_GAIN[4,AX2] = 8N32200 $MA_POSCTRL_GAIN[5,AX2] = 8N32300 $MA_MAX_AX_ACCEL[0,AX2] = 0.19 Rev/s²N32300 $MA_MAX_AX_ACCEL[1,AX2] = 0.19 Rev/s²N32300 $MA_MAX_AX_ACCEL[2,AX2] = 0.19 Rev/s²N32300 $MA_MAX_AX_ACCEL[3,AX2] = 0.19 Rev/s²N32300 $MA_MAX_AX_ACCEL[4,AX2] = 0.19 Rev/s²N32420 $MA_JOG_AND_POS_JERK_ENABLE[AX2] = 1N32430 $MA_JOG_AND_POS_MAX_JERK[AX2] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[0,AX2] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[1,AX2] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[2,AX2] = 10 Rev/s³N32431 $MA_MAX_AX_JERK[3,AX2] = 4 Rev/s³N32431 $MA_MAX_AX_JERK[4,AX2] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[0,AX2] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[1,AX2] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[2,AX2] = 10 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[3,AX2] = 4 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[4,AX2] = 2 Rev/s³N32620 $MA_FFW_MODE[AX2] = 0N32630 $MA_FFW_ACTIVATION_MODE[AX2] = 0
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 70
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Machine data Value Unit CommentN32890 $MA_DESVAL_DELAY_ENABLE[AX2] = 1N32895 $MA_DESVAL_DELAY_TIME[AX2] = 0.042828 sN36000 $MA_STOP_LIMIT_COARSE[AX2] = 0.01 degreeN36010 $MA_STOP_LIMIT_FINE[AX2] = 0.005 degreeN36100 $MA_POS_LIMIT_MINUS[AX2] = -138 degreeN36110 $MA_POS_LIMIT_PLUS[AX2] = -7 degreeN36200 $MA_AX_VELO_LIMIT[0,AX2] = 19.32 RpmN36200 $MA_AX_VELO_LIMIT[1,AX2] = 19.32 RpmN36200 $MA_AX_VELO_LIMIT[2,AX2] = 19.32 RpmN36200 $MA_AX_VELO_LIMIT[3,AX2] = 19.32 RpmN36200 $MA_AX_VELO_LIMIT[4,AX2] = 19.32 RpmN36200 $MA_AX_VELO_LIMIT[5,AX2] = 19.32 Rpm
7.3.3 RA13 axis
Table 7-7
Machine data Value Unit CommentN30130 $MA_CTRLOUT_TYPE[0,AX3] = 0N30132 $MA_IS_VIRTUAL_AX[AX3] = 0N30240 $MA_ENC_TYPE[0,AX3] = 0N30240 $MA_ENC_TYPE[1,AX3] = 0N30300 $MA_IS_ROT_AX[AX3] = 1N30350 $MA_SIMU_AX_VDI_OUTPUT[AX3] = 1N32000 $MA_MAX_AX_VELO[AX3] = 17.8 RpmN32010 $MA_JOG_VELO_RAPID[AX3] = 4 RpmN32020 $MA_JOG_VELO[AX3] = 2 RpmN32200 $MA_POSCTRL_GAIN[0,AX3] = 8N32200 $MA_POSCTRL_GAIN[1,AX3] = 8N32200 $MA_POSCTRL_GAIN[2,AX3] = 8N32200 $MA_POSCTRL_GAIN[3,AX3] = 8N32200 $MA_POSCTRL_GAIN[4,AX3] = 8N32200 $MA_POSCTRL_GAIN[5,AX3] = 8N32300 $MA_MAX_AX_ACCEL[0,AX3] = 0.19 Rev/s²N32300 $MA_MAX_AX_ACCEL[1,AX3] = 0.19 Rev/s²N32300 $MA_MAX_AX_ACCEL[2,AX3] = 0.19 Rev/s²N32300 $MA_MAX_AX_ACCEL[3,AX3] = 0.19 Rev/s²N32300 $MA_MAX_AX_ACCEL[4,AX3] = 0.19 Rev/s²N32420 $MA_JOG_AND_POS_JERK_ENABLE[AX3] = 1N32430 $MA_JOG_AND_POS_MAX_JERK[AX3] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[0,AX3] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[1,AX3] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[2,AX3] = 10 Rev/s³N32431 $MA_MAX_AX_JERK[3,AX3] = 4 Rev/s³N32431 $MA_MAX_AX_JERK[4,AX3] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[0,AX3] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[1,AX3] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[2,AX3] = 10 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[3,AX3] = 4 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[4,AX3] = 2 Rev/s³N32620 $MA_FFW_MODE[AX3] = 0N32630 $MA_FFW_ACTIVATION_MODE[AX3] = 0N32890 $MA_DESVAL_DELAY_ENABLE[AX3] = 1N32895 $MA_DESVAL_DELAY_TIME[AX3] = 0.042828 sN36000 $MA_STOP_LIMIT_COARSE[AX3] = 0.01 degreeN36010 $MA_STOP_LIMIT_FINE[AX3] = 0.005 degreeN36100 $MA_POS_LIMIT_MINUS[AX3] = -118 degreeN36110 $MA_POS_LIMIT_PLUS[AX3] = 153 degree
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 71
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Machine data Value Unit CommentN36200 $MA_AX_VELO_LIMIT[0,AX3] = 20.47 RpmN36200 $MA_AX_VELO_LIMIT[1,AX3] = 20.47 RpmN36200 $MA_AX_VELO_LIMIT[2,AX3] = 20.47 RpmN36200 $MA_AX_VELO_LIMIT[3,AX3] = 20.47 RpmN36200 $MA_AX_VELO_LIMIT[4,AX3] = 20.47 RpmN36200 $MA_AX_VELO_LIMIT[5,AX3] = 20.47 Rpm
7.3.4 RA14 axis
Table 7-8
Machine data Value Unit CommentN30130 $MA_CTRLOUT_TYPE[0,AX4] = 0N30132 $MA_IS_VIRTUAL_AX[AX4] = 0N30240 $MA_ENC_TYPE[0,AX4] = 0N30240 $MA_ENC_TYPE[1,AX4] = 0N30300 $MA_IS_ROT_AX[AX4] = 1N30350 $MA_SIMU_AX_VDI_OUTPUT[AX4] = 1N32000 $MA_MAX_AX_VELO[AX4] = 20.3 RpmN32010 $MA_JOG_VELO_RAPID[AX4] = 4 RpmN32020 $MA_JOG_VELO[AX4] = 2 RpmN32200 $MA_POSCTRL_GAIN[0,AX4] = 8N32200 $MA_POSCTRL_GAIN[1,AX4] = 8N32200 $MA_POSCTRL_GAIN[2,AX4] = 8N32200 $MA_POSCTRL_GAIN[3,AX4] = 8N32200 $MA_POSCTRL_GAIN[4,AX4] = 8N32200 $MA_POSCTRL_GAIN[5,AX4] = 8N32300 $MA_MAX_AX_ACCEL[0,AX4] = 0.28 Rev/s²N32300 $MA_MAX_AX_ACCEL[1,AX4] = 0.28 Rev/s²N32300 $MA_MAX_AX_ACCEL[2,AX4] = 0.28 Rev/s²N32300 $MA_MAX_AX_ACCEL[3,AX4] = 0.28 Rev/s²N32300 $MA_MAX_AX_ACCEL[4,AX4] = 0.28 Rev/s²N32420 $MA_JOG_AND_POS_JERK_ENABLE[AX4] = 1N32430 $MA_JOG_AND_POS_MAX_JERK[AX4] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[0,AX4] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[1,AX4] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[2,AX4] = 10 Rev/s³N32431 $MA_MAX_AX_JERK[3,AX4] = 4 Rev/s³N32431 $MA_MAX_AX_JERK[4,AX4] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[0,AX4] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[1,AX4] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[2,AX4] = 10 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[3,AX4] = 4 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[4,AX4] = 2 Rev/s³N32620 $MA_FFW_MODE[AX4] = 0N32630 $MA_FFW_ACTIVATION_MODE[AX4] = 0N32890 $MA_DESVAL_DELAY_ENABLE[AX4] = 1N32895 $MA_DESVAL_DELAY_TIME[AX4] = 0.042828 sN36000 $MA_STOP_LIMIT_COARSE[AX4] = 0.01 degreesN36010 $MA_STOP_LIMIT_FINE[AX4] = 0.005 degreesN36100 $MA_POS_LIMIT_MINUS[AX4] = -348 degreesN36110 $MA_POS_LIMIT_PLUS[AX4] = 348 degreesN36200 $MA_AX_VELO_LIMIT[0,AX4] = 23.345 RpmN36200 $MA_AX_VELO_LIMIT[1,AX4] = 23.345 RpmN36200 $MA_AX_VELO_LIMIT[2,AX4] = 23.345 RpmN36200 $MA_AX_VELO_LIMIT[3,AX4] = 23.345 RpmN36200 $MA_AX_VELO_LIMIT[4,AX4] = 23.345 RpmN36200 $MA_AX_VELO_LIMIT[5,AX4] = 23.345 Rpm
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 72
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
7.3.5 RA15 axis
Table 7-9
Machine data Value Unit CommentN30130 $MA_CTRLOUT_TYPE[0,AX5] = 0N30132 $MA_IS_VIRTUAL_AX[AX5] = 0N30240 $MA_ENC_TYPE[0,AX5] = 0N30240 $MA_ENC_TYPE[1,AX5] = 0N30300 $MA_IS_ROT_AX[AX5] = 1N30350 $MA_SIMU_AX_VDI_OUTPUT[AX5] = 1N32000 $MA_MAX_AX_VELO[AX5] = 18.7 RpmN32010 $MA_JOG_VELO_RAPID[AX5] = 4 RpmN32020 $MA_JOG_VELO[AX5] = 2 RpmN32200 $MA_POSCTRL_GAIN[0,AX5] = 8N32200 $MA_POSCTRL_GAIN[1,AX5] = 8N32200 $MA_POSCTRL_GAIN[2,AX5] = 8N32200 $MA_POSCTRL_GAIN[3,AX5] = 8N32200 $MA_POSCTRL_GAIN[4,AX5] = 8N32200 $MA_POSCTRL_GAIN[5,AX5] = 8N32300 $MA_MAX_AX_ACCEL[0,AX5] = 0.26 Rev/s²N32300 $MA_MAX_AX_ACCEL[1,AX5] = 0.26 Rev/s²N32300 $MA_MAX_AX_ACCEL[2,AX5] = 0.26 Rev/s²N32300 $MA_MAX_AX_ACCEL[3,AX5] = 0.26 Rev/s²N32300 $MA_MAX_AX_ACCEL[4,AX5] = 0.26 Rev/s²N32420 $MA_JOG_AND_POS_JERK_ENABLE[AX5] = 1N32430 $MA_JOG_AND_POS_MAX_JERK[AX5] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[0,AX5] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[1,AX5] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[2,AX5] = 10 Rev/s³N32431 $MA_MAX_AX_JERK[3,AX5] = 4 Rev/s³N32431 $MA_MAX_AX_JERK[4,AX5] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[0,AX5] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[1,AX5] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[2,AX5] = 10 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[3,AX5] = 4 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[4,AX5] = 2 Rev/s³N32620 $MA_FFW_MODE[AX5] = 0N32630 $MA_FFW_ACTIVATION_MODE[AX5] = 0N32890 $MA_DESVAL_DELAY_ENABLE[AX5] = 1N32895 $MA_DESVAL_DELAY_TIME[AX5] = 0.042828 sN36000 $MA_STOP_LIMIT_COARSE[AX5] = 0.01 degreesN36010 $MA_STOP_LIMIT_FINE[AX5] = 0.005 degreesN36100 $MA_POS_LIMIT_MINUS[AX5] = -120.5 degreesN36110 $MA_POS_LIMIT_PLUS[AX5] = 120.5 degreesN36200 $MA_AX_VELO_LIMIT[0,AX5] = 21.505 RpmN36200 $MA_AX_VELO_LIMIT[1,AX5] = 21.505 RpmN36200 $MA_AX_VELO_LIMIT[2,AX5] = 21.505 RpmN36200 $MA_AX_VELO_LIMIT[3,AX5] = 21.505 RpmN36200 $MA_AX_VELO_LIMIT[4,AX5] = 21.505 RpmN36200 $MA_AX_VELO_LIMIT[5,AX5] = 21.505 Rpm
7.3.6 RA16 axis
Table 7-10
Machine data Value Unit Comment
7 Machine data
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 73
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Machine data Value Unit CommentN30130 $MA_CTRLOUT_TYPE[0,AX6] = 0N30132 $MA_IS_VIRTUAL_AX[AX6] = 0N30240 $MA_ENC_TYPE[0,AX6] = 0N30240 $MA_ENC_TYPE[1,AX6] = 0N30300 $MA_IS_ROT_AX[AX6] = 1N30350 $MA_SIMU_AX_VDI_OUTPUT[AX6] = 1N32000 $MA_MAX_AX_VELO[AX6] = 29.1 RpmN32010 $MA_JOG_VELO_RAPID[AX6] = 4 RpmN32020 $MA_JOG_VELO[AX6] = 2 RpmN32200 $MA_POSCTRL_GAIN[0,AX6] = 8N32200 $MA_POSCTRL_GAIN[1,AX6] = 8N32200 $MA_POSCTRL_GAIN[2,AX6] = 8N32200 $MA_POSCTRL_GAIN[3,AX6] = 8N32200 $MA_POSCTRL_GAIN[4,AX6] = 8N32200 $MA_POSCTRL_GAIN[5,AX6] = 8N32300 $MA_MAX_AX_ACCEL[0,AX6] = 0.4 Rev/s²N32300 $MA_MAX_AX_ACCEL[1,AX6] = 0.4 Rev/s²N32300 $MA_MAX_AX_ACCEL[2,AX6] = 0.4 Rev/s²N32300 $MA_MAX_AX_ACCEL[3,AX6] = 0.4 Rev/s²N32300 $MA_MAX_AX_ACCEL[4,AX6] = 0.4 Rev/s²N32420 $MA_JOG_AND_POS_JERK_ENABLE[AX6] = 1N32430 $MA_JOG_AND_POS_MAX_JERK[AX6] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[0,AX6] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[1,AX6] = 2 Rev/s³N32431 $MA_MAX_AX_JERK[2,AX6] = 10 Rev/s³N32431 $MA_MAX_AX_JERK[3,AX6] = 4 Rev/s³N32431 $MA_MAX_AX_JERK[4,AX6] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[0,AX6] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[1,AX6] = 2 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[2,AX6] = 10 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[3,AX6] = 4 Rev/s³N32432 $MA_PATH_TRANS_JERK_LIM[4,AX6] = 2 Rev/s³N32620 $MA_FFW_MODE[AX5] = 0N32630 $MA_FFW_ACTIVATION_MODE[AX6] = 0N32890 $MA_DESVAL_DELAY_ENABLE[AX6] = 1N32895 $MA_DESVAL_DELAY_TIME[AX6] = 0.042828 sN36000 $MA_STOP_LIMIT_COARSE[AX6] = 0.01 degreesN36010 $MA_STOP_LIMIT_FINE[AX6] = 0.005 degreesN36100 $MA_POS_LIMIT_MINUS[AX6] = -348 degreesN36110 $MA_POS_LIMIT_PLUS[AX6] = 348 degreesN36200 $MA_AX_VELO_LIMIT[0,AX6] = 33.465 RpmN36200 $MA_AX_VELO_LIMIT[1,AX6] = 33.465 RpmN36200 $MA_AX_VELO_LIMIT[2,AX6] = 33.465 RpmN36200 $MA_AX_VELO_LIMIT[3,AX6] = 33.465 RpmN36200 $MA_AX_VELO_LIMIT[4,AX6] = 33.465 RpmN36200 $MA_AX_VELO_LIMIT[5,AX6] = 33.465 Rpm
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 74
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
8 Safety Integrated8.1 Sinumerik Profisafe
8.1.1 NCK (SAFE.SPF)
NCK-SPL Minimum Sample;VERSION: 03.00.00.00 ;DATE: 2014-09-02;CHANGE : 03.00.00.00 ;DATE: 2014-09-02
;Run MyRobot: SAFE.SPF;SAFETY-SAMPLE - 1 robot
;Changes:; 03.00.00.00 Sep 2, 2014 - rmr/koe; - initial
;============================================================; safe inputs ;PLC-DB18.;------------------------------------------------------------N1000 define IE_ESTOP_MCP_OK as $A_INSE[01] ; DBX 38.0N1010 define IE_ESTOP_HPU_OK as $A_INSE[02] ; DBX 38.1N1020 define IE_GUARD_DOOR_LOCKED as $A_INSE[03] ; DBX 38.2N1030 define IE_ACCEPTANCE_HPU as $A_INSE[04] ; DBX 38.3
N1040 define IE_KRC1_NHL as $A_INSE[33] ; DBX 42.0N1050 define IE_KRC1_PE as $A_INSE[34] ; DBX 42.1N1060 define IE_KRC1_AUT as $A_INSE[35] ; DBX 42.2N1070 define IE_KRC1_T1 as $A_INSE[36] ; DBX 42.3N1080 define IE_KRC1_T2 as $A_INSE[37] ; DBX 42.4N1090 define IE_KRC1_SHS1 as $A_INSE[38] ; DBX 42.5N1100 define IE_KRC1_SHS2 as $A_INSE[39] ; DBX 42.6N1110 define IE_KRC1_SO as $A_INSE[40] ; DBX 42.7
;============================================================; safe outputs ;PLC-DB18.;------------------------------------------------------------N1120 define OE_KRC1_NHE as $A_OUTSE[33] ; DBX 50.0N1130 define OE_KRC1_BS as $A_OUTSE[34] ; DBX 50.1N1140 define OE_KRC1_QBS as $A_OUTSE[35] ; DBX 50.2N1150 define OE_KRC1_SHS1 as $A_OUTSE[36] ; DBX 50.3N1160 define OE_KRC1_SHS2 as $A_OUTSE[37] ; DBX 50.4N1170 define OE_KRC1_SBH as $A_OUTSE[38] ; DBX 50.5N1180 define OE_KRC1_SO_JR as $A_OUTSE[39] ; DBX 50.6N1190 define OE_KRC1_SO_VRED as $A_OUTSE[40] ; DBX 50.7N1200 define OE_KRC1_SO_WZ1 as $A_OUTSE[41] ; DBX 51.0
;============================================================; internal marker ;PLC-DB18.;------------------------------------------------------------N1210 define MI_COLLECT_ESTOP as $A_MARKERSI[01] ; DBX70.0N1220 define MI_ESTOP_OK as $A_MARKERSI[02] ; DBX70.1N1230 define MI_ESTOP_DEL_1S as $A_MARKERSI[03] ; DBX70.2N1240 define MI_ESTOP_DEL_3S as $A_MARKERSI[04] ; DBX70.3N1250 define MI_ESTOP_DEL_10S as $A_MARKERSI[05] ; DBX70.4
N1260 define MI_QUIT_ESTOP as $A_MARKERSI[07] ; DBX70.6N1270 define MI_QUIT_ESTOP_DYN as $A_MARKERSI[08] ; DBX70.7
N1280 define MI_COLLECT_GUARD_DOORS as $A_MARKERSI[09] ; DBX71.0N1290 define MI_COLLECT_ACCEPTANCE as $A_MARKERSI[10] ; DBX71.1
N1300 define MI_SBH_DIRECT_R1 as $A_MARKERSI[17] ; DBX72.0
;============================================================; singlechannel data: PLC -> NCK ;PLC-DB18.;------------------------------------------------------------N1310 define fromPLC_QUIT_ESTOP as $A_PLCSIIN[01] ; DBX132.0N1320 define fromPLC_QUIT_ESTOP_DYN as $A_PLCSIIN[02] ; DBX132.1
N1330 define fromPLC_MCP_ACTIVE as $A_PLCSIIN[05] ; DBX132.4N1340 define fromPLC_HPU_ACTIVE as $A_PLCSIIN[06] ; DBX132.5
N1350 define fromPLC_EXT_MOVE_ENABLE_R1 as $A_PLCSIIN[09] ; DBX133.0
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 75
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
N1360 define fromPLC_DELAY_DRIVES_ON_R1 as $A_PLCSIIN[10] ; DBX133.1
;============================================================; singlechannel data: NCK -> PLC ;PLC-DB18.;------------------------------------------------------------N1370 define toPLC_OUT_01 as $A_PLCSIOUT[01] ; DBX128.0
;============================================================; safe timers;------------------------------------------------------------N1380 define TI_DELAY_SBH_R1 as $A_TIMERSI[1]N1390 define TI_DELAY_VRED_R1 as $A_TIMERSI[2]
;============================================================; define variables for SIRELAY;------------------------------------------------------------N1400 def INT STAT_IN, STAT_OUT, STAT_TIMEN1410 define M_STATE_1 as $AC_MARKER[1]
;============================================================; initialise SIRELAY;------------------------------------------------------------N1420 SIRELIN (1,STAT_IN,”MI_QUIT_ESTOP”,”MI_QUIT_ESTOP_DYN”,”MI_COLLECT_ESTOP”)N1430 SIRELOUT(1,STAT_OUT,”MI_ESTOP_OK”,”MI_ESTOP_DEL_1S”,”MI_ESTOP_DEL_3S”,”MI_ESTOP_DEL_10S”)N1440 SIRELTIME(1,STAT_TIME,0.1,1.0,3.0,10.0)
;============================================================; safety nc;------------------------------------------------------------; init SIRELAYN1450 ids=200 do M_STATE_1 = SIRELAY(1)
; collect estopN1460 ids=201 do MI_COLLECT_ESTOP = IE_ESTOP_MCP_OK and IE_ESTOP_HPU_OK and IE_KRC1_NHL; quit estopN1470 ids=202 do MI_QUIT_ESTOP = fromPLC_QUIT_ESTOP
; collect guard doorsN1480 ids=203 do MI_COLLECT_GUARD_DOORS = IE_GUARD_DOOR_LOCKED
; collect acceptance buttonsN1490 ids=204 do MI_COLLECT_ACCEPTANCE = IE_ACCEPTANCE_HPU and fromPLC_HPU_ACTIVE
;============================================================; robot 1;------------------------------------------------------------N1500 ids=210 do OE_KRC1_BS=true OE_KRC1_QBS=true OE_KRC1_SHS2=true OE_KRC1_SO_WZ1=trueN1510 ids=211 do OE_KRC1_NHE = MI_ESTOP_OKN1520 ids=212 do OE_KRC1_SHS1 = fromPLC_EXT_MOVE_ENABLE_R1 and IE_KRC1_SON1530 ids=213 do MI_SBH_DIRECT_R1 = MI_COLLECT_GUARD_DOORS or (NOT IE_KRC1_T1 and NOTIE_KRC1_T2 and MI_COLLECT_ACCEPTANCE)N1540 TI_DELAY_SBH_R1=2.0N1550 ids=214 whenever MI_SBH_DIRECT_R1 or not IE_KRC1_PE or IE_KRC1_T1 or IE_KRC1_T2do TI_DELAY_SBH_R1 = 0.0N1560 ids=215 do OE_KRC1_SBH = (TI_DELAY_SBH_R1 <= 1.0)N1570 TI_DELAY_VRED_R1=2.0N1580 ids=216 whenever MI_COLLECT_GUARD_DOORS do TI_DELAY_VRED_R1 = 0.0N1590 ids=217 do OE_KRC1_SO_VRED = (TI_DELAY_VRED_R1 <= 1.0)N1600 ids=218 do OE_KRC1_SO_JR = trueN1610 M30
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 76
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
8.1.2 PLC (FC3000)
PLC-SPL Minimum Sample (excerpt)
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 77
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
8.1.3 Machine Data
Table 8-1 Profisafe Maschinendaten
MD Value Comment
10385[] $MN_PROFISAFE_MASTER_ADDRESS 50007D0H PLC-CPU 317F,ProfiSafe-Basis-Address
10386[] $MN_PROFISAFE_IN_ADDRESS 500012CH Input 1 to 32 fromKRC, SAFE-ID 300
10387[] $MN_PROFISAFE_OUT_ADDRESS 500012CH Output 1 to 32 fromKRC, SAFE-ID 300
10387[] $MN_PROFISAFE_OUT_ADDRESS 501012CH Output 33 to 64 fromKRC, SAFE-ID 300
10388[] $MN_PROFISAFE_IN_ASSIGN 33040 Assignment INSEs10388[] $MN_PROFISAFE_OUT_ASSIGN 33040 Assignment OUTSEs10388[] $MN_PROFISAFE_OUT_ASSIGN 41041 Assignment OUTSEs13300[] $MN_PROFISAFE_IN_FILTER 10cf1H Userdata-Filter IN13300[] $MN_PROFISAFE_OUT_FILTER 3023eH Userdata -Filter OUT13300[] $MN_PROFISAFE_OUT_FILTER 10000H Userdata -Filter OUT
8.2 KUKA Safe Operations
DescriptionThe exchange between safety-relevant signals, controller and machine is realizedby PROFIsafe. The assignment of in- and out-states in the PROFIsafe protocol aredescribed as followed.
Reserve-BitsReserved safe-inputs can be predefined with 0 or 1 by a PLC. The robot will start inboth cases. If a reserved input is assigned with a safety-function (e. g. during asoftware update) and if this input is initialized with value 0 the robot will not move orbe forced to stop unexpected.
Note KUKA recommends to initialize all reserve-inputs with value 1.
If a reserved input is assigned with a new safety function and the PLC of thecustomer has not been used yet, this safety function will not be activated.Thereby, an unexpected stop of the robot can be prevented.
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 78
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
8.2.1 Safe Inputs of the KRC
Table 8-2 Krc Safe Input Byte 0
Bit Signal Description
0 RES Reserved 1This input should be initialized with value 1
1 NHE Input for external Emergency Stop0 = External Emergency-Stop enabled1 = External Emergency-Stop disabled
2 BS User protection0 = User protection disabled, e. g. guard doors open1 = User protection enabled
3 QBS Acknowledgement of the user protectionSignal „User protection ensured“ in Bit BS is needed to acknowledge theuser protection.Note: If the signal BS is acknowledged by the machine this informationhas to be provided in the Hardware-Options. Further information can befound in the operating and programming manual for system integrators.0 = User protection not acknowledgedRising Edge 0 -> 1 = User protection acknowledged
4 SHS1 Save STOP 1 (all axes)· FF (move enable) is set to 0· US2 voltage is switched off· AF (drive enable) is set to 0 after 1.5 sec
This function needs no acknowledgement to be cancelled.This signal is not allowed for the emergency-stop-function.0 = Save Stop enabled1 = Save Stop disabled
5 SHS2 Save STOP 2 (all axes)· FF (move enable) is set to 0· US2 voltage is switched off
This function needs no acknowledgement to be cancelled.This signal is not allowed for the emergency-stop-function.0 = Save Stop enabled1 = Save Stop disabled
6 RES -7 RES -
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 79
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Table 8-3 Krc Safe Input Byte 1
Bit Signal Description
0 US2 US2 Supply voltage (signal for switching on the second unbufferedsupply voltage US2)If this input is not used it should be initialized with value 0.0 = Switch off US21 = Switch on US2Note: If and how input US2 is used has to be configured in the safetyconfiguration (Hardware-options). Further information can be found inthe operating and programming manual for system integrators.
1 SBH Safe operating Stop (all axes)Requires all axes to be stopped.This function needs no acknowledgement to be cancelled.This signal is not allowed for the emergency-stop-function.0 = Safe operating Stop enabled1 = Safe operating Stop disabled
2 RES Reserved 11This input should be initialized with value 1
3 RES Reserved 12This input should be initialized with value 1
4 RES Reserved 13This input should be initialized with value 1
5 RES Reserved 14This input should be initialized with value 1
6 RES Reserved 15This input should be initialized with value 1
7 SPA Shutdown PROFIsafe AcknowledgeThe machine approves when it has received the Shutdown-signal. Onesecond after setting signal “SP” (Shutdown PROFIsafe) by theController the requested action will be realized by the PLC without anyacknowledgements and the controller shuts down.0 = Acknowledge disabled1 = Acknowledge enabled
Table 8-4 Krc Safe Operation Input Byte 2
Bit Signal Description
0 JR Masteringtest (input for masteringtest switch)0 = Masteringtest switch enabled1 = Masteringtest switch disabled
1 VRED Reduced ax-specific and Cartesian velocity (activation of the reducedvelocity control).0 = Reduced velocity control enabled1 = Reduced velocity control disabled
2…7 SBH1...6 Safe operating Stop ax-group 1 … 6Assignment:Bit 2 = Ax-group 1 … Bit 7 = Ax-group 6Signal for Safe operating Stop. This function does not trigger a stoporder but activates Safe operating Stop.This function needs no acknowledgement to be cancelled.0 = Safe operating Stop enabled1 = Safe operating Stop disabled
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 80
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Table 8-5 Krc Safe Operation Input Byte 3
Bit Signal Description
0…7 RES Reserved 25 … 32These inputs should be initialized with value 1
Table 8-6 Krc Operation Input Byte 4
Bit Signal Description
0…7 UER1…8 Protected Spaces 1 … 8Assignment:Bit 0 = Protected Space 1 … Bit 7 = Protected Space 80 = Protected Space enabled1 = Protected Space disabled
Table 8-7 Krc Operation Input Byte 5
Bit Signal Description
0…7 UER9…16 Protected Spaces 9 … 16Assignment:Bit 0 = Protected Space 9 … Bit 7 = Protected Space 160 = Protected Space enabled1 = Protected Space disabled
Table 8-8 Krc Operation Input Byte 6
Bit Signal Description
0…7 WZ1…8 Tools 1… 8Assignment:Bit 0 = Tool 1… Bit 7 = Tool 80 = Tool disabled1 = Tool enabledJust one tool has to be selected at any time
Table 8-9 Krc Operation Input Byte 7
Bit Signal Description
0…7 WZ9…16 Tools 9… 16Assignment:Bit 0 = Tool 9… Bit 7 = Tool 160 = Tool disabled1 = Tool enabledJust one tool has to be selected at any time
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 81
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
8.2.2 Safe Outputs of the KRC
Table 8-10 Krc Safe Output Byte 0
Bit Signal Description
0 NHL Local Emergency-Stop (local Emergency-Stop triggered)0 = Local Emergency-Stop enabled1 = Local Emergency-Stop disabled
1 AF Drive enable (the internal KRC safety controller has enabled the drivesto be switched on)0 = Drive disabled (Robot controller has to switch off the drives)1 = Drive enabled (Robot controller has to switch on the drives)
2 FF Move enable (the internal KRC safety controller has enabled robotmovements)0 = Move disabled (Robot controller has to stop the current movement)1 = Move enabled (Robot is allowed to move)
3 ZS One of the acceptance keys is in the mid-position (acceptance grantedin Test mode)0 = Acceptance key disabled1 = Acceptance key enabled
4 PE Signal Peri enabled is set to value 1 (enabled) if the followingconditions are met:
· Drives are switched on.· Move enable granted by the safety controller.· No message „User protection open“.
5 AUT The manipulator is set to operating mode AUT or AUT EXT0 = Operating mode AUT and AUT EXT disabled1 = Operating mode AUT or AUT EXT enabled
6 T1 The manipulator is set to operating mode manual reduced velocity0 = Operating mode T1 disabled1 = Operating mode T1 enabled
7 T2 The manipulator is set to operating mode manual high velocity0 = Operating mode T2 disabled1 = Operating mode T2 enabled
Table 8-11 Krc Safe Output Byte 1
Bit Signal Description
0 NHE External Emergency-Stop triggered0 = External Emergency-Stop enabled1 = External Emergency-Stop disabled
1 BS User protection0 = User protection not ensured1 = User protection ensured (input BS = 1 and – if configured – inputQBS acknowledged)
2 SHS1 Save STOP 1 (all axes)0 = Save STOP 1 disabled1 = Save STOP 1 enabled (safe state ensured)
3 SHS2 Save STOP 2 (all axes)0 = Save STOP 2 disabled1 = Save STOP 2 enabled (safe state ensured)
4 RES Reserved 13
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 82
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Bit Signal Description
5 RES Reserved 146 PSA PROFIsafe enabled (Robot controller is displayed as PROFIsafe
Device)Requires PROFINET to be installed on the controller0 = Robot controller not available in the PROFIsafe Bus1 = Robot controller available in the PROFIsafe Bus
7 SP Shutdown PROFIsafe (The robot controller announces the terminationof the PROFIsafe-connection)If the PLC sends the signal SP, to confirm the signal SPA, PSA will beset to value 0 and the controller shuts down.One second after setting the signal SP, the robot controller sets outputPSA and shuts down without waiting for the PLC confirmation.0 = No termination connection announcement received1 = Termination connection announcement received
Table 8-12 Krc Safe Operation Output Byte 2
Bit Signal Description
0 SO SafeOperation enabledActivation state of SafeOperation0 = SafeOperation disabled1 = SafeOperation enabled
1 RR Robot referencingShows masteringtest satus0 = Masteringtest necessary1 = Masteringtest successfully completed
2 JF Referencing errorSafeOperation disabled because at least one axis is not referenced0 = Referencing error. SafeOperation disabled1 = No errors
3 VRED Reduced ax-specific and Cartesian velocity (activation of the reducedvelocity control)0 = Reduced velocity control disabled1 = Reduced velocity control enabled
4…5 SBH1…2 Safe operating Stop activation state of ax-group 1 … 2Assignment:Bit 4 = Ax-group 1 … Bit 5 = Ax-group 20 = Safe operating Stop disabled1 = Safe operating Stop enabled
6…7 RES Reserved 23 … 24
8 Safety Integrated
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 83
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Table 8-13 Krc Safe Operation Output Byte 3
Bit Signal Description
0…7 RES Reserved 25 … 32
Table 8-14 Krc Safe Operation Output Byte 4
Bit Signal Description
0…7 MR1…8 Status spaces 1 … 8Assignment:Bit 0 = Status space 1 (based on protected space 1) … Bit 7 = Statusspace 8 (based on protected space 8)0 = Space limits violated1 = Space limits not violated
Table 8-15 Krc Safe Operation Output Byte 5
Bit Signal Description
0…7 MR9…16 Status spaces 9 … 16Assignment:Bit 0 = Status space 9 (based on protected space 9) … Bit 7 = Statusspace 16 (based on protected space 16)0 = Space limits violated1 = Space limits not violated
Table 8-16 Krc Safe Operation Output Byte 6
Bit Signal Description
0…7 RES Reserved 48 … 55
Table 8-17 Krc Safe Operation Output Byte 7
Bit Signal Description
0…7 RES Reserved 56 … 63
9 Coordinate systems
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 84
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
9 Coordinate systems9.1 General
In order to make a clear distinction from the term "frame" as it is used in the NClanguage, the following description explains the meaning of the term "frame" withregard to the ROBX transformation.
9.1.1 Frame
A frame can be used to translate one coordinate system into another whereby adistinction is made between translation and rotation. Whereas the translationcauses only an offset, the rotation turns the coordinate system with regard to thereference system. The X, Y and Z coordinates are used to describe the translation.They are defined to produce a right-hand coordinate system. In this case, thetranslation is performed prior to the rotation.
9.1.2 Translation
The translation is always specified in relation to the coordinate directions of theinitial system. These directions are assigned to machine data as follows:X direction: ..._POS[0]Y direction: ..._POS[1]Z direction: ..._POS[2]
9.1.3 Rotation
The rotation is described by the A, B and C RPY (roll pitch yaw) angles. Thepositive direction of rotation is specified by the "right-hand" rule, i.e. if the thumb ofthe right hand points in the direction of the rotary axis, the remaining fingersindicate the positive angle direction. In this respect, it must be noted that A and Care defined at intervals [-180; +180] and B at intervals [-90; +90]. The RPY anglesare defined as follows:
Angle A: 1st rotation about the Z axis of the initial systemB angle: 2nd rotation about the rotated Y axisC angle: 3rd rotation about the twice rotated X axis
The RPY angles are assigned to machine data as follows:Angle A: ..._RPY[0]Angle B: ..._RPY[1]Angle C: ..._RPY[2]
9 Coordinate systems
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 85
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 9-1 shows an example for the rotation through the RPY angle. In this case,the initial coordinate system X1, Y1, Z1 is first rotated through the angle A aboutthe Z1 axis, then through the angle B about the Y2 axis, and finally through theangle C about the X3 axis.
Figure 9-1: Example of rotation through the RPY angles
X1
Y1
Z1
X2
Y2
Z2
X3
Y3
Z3 X4
Y4
Z4
A = -90 B = 90 C = 90
9 Coordinate systems
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 86
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
9.2 Basic coordinate system
In the standard setting, the base coordinate system lies at the foot point of therobot (red coordinate system in Figure 9-2). Consequently, this produces an offsetin the Z direction compared with the internal robot coordinate system. The exampledata applies to the KUKA KR300 R2500 Quantec Ultra robot.Depending on the plant specification, the following machine data can be used tooffset and rotate the base coordinate system compared with the internal robotcoordinate system as required. It does not need to lie at the foot point of the robot.A detailed description of the ROBX robot transformation is available in the separate“ROBX transformation function documentation”.
Figure 9-2: The base coordinate system using the KUKA KR300 R2500 Ultra as example
XRO
YRO
ZRO
$MC_ROBX_TIRORO_POS[2] = 675
XIRO
YIRO
ZIRO
9 Coordinate systems
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 87
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Table 9-1Machine data Value UnitN62912 $MC_ROBX_TIRORO_POS[0] = 0 mmN62912 $MC_ROBX_TIRORO_POS[1] = 0 mmN62912 $MC_ROBX_TIRORO_POS[2] = 675 mmN62913 $MC_ROBX_TIRORO_RPY[0] = 0 degreesN62913 $MC_ROBX_TIRORO_RPY[1] = 0 degreesN62913 $MC_ROBX_TIRORO_RPY[2] = 0 degrees
9.3 Flange coordinate system
In the default setting, the flange coordinate system in N62911$MC_ROBX_TFLWP_RPY[0-2] is oriented as shown in Figure 9-3. This isequivalent to the values shown in Table 9-2.The offsets in N62910 $MC_ROBX_TFLWP_POS[0-2] are an example for theKUKA KR300 R2500 Quantec Ultra robot.
Figure 9-3: The flange coordinate system using the KUKA KR300 R2500 Ultra as example
XFL
YFL
ZFL
$MC_ROBX_TFLWP_POS[2] = 240
9 Coordinate systems
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 88
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Table 9-2Machine data Value UnitN62910 $MC_ROBX_TFLWP_POS[0] = 0 mmN62910 $MC_ROBX_TFLWP_POS[1] = 0 mmN62910 $MC_ROBX_TFLWP_POS[2] = 240 mmN62911 $MC_ROBX_TFLWP_RPY[0] = 180 degreesN62911 $MC_ROBX_TFLWP_RPY[1] = 0 degreesN62911 $MC_ROBX_TFLWP_RPY[2] = 180 degrees
9.3.1 The flange coordinate system for single part tools
For single part tools, the reference point for the tool lengths (L1, L2, L3) and thetool rotations of the flange coordinate system is defined as in Chapter9.3. Figure9-4 and the following table show an example parameterization for a gripper tool.
Figure 9-4: Parameterization of a single part tool using a gripper tool as example
Table 9-3Machine data Value UnitN62910 $MC_ROBX_TFLWP_POS[0] = 0 mmN62910 $MC_ROBX_TFLWP_POS[1] = 0 mmN62910 $MC_ROBX_TFLWP_POS[2] = 240 mmN62911 $MC_ROBX_TFLWP_RPY[0] = 180 degreesN62911 $MC_ROBX_TFLWP_RPY[1] = 0 degreesN62911 $MC_ROBX_TFLWP_RPY[2] = 180 degrees$TC_DP3[1,1 ] (Z) length L1 (for G17) 250 mm$TC_DP4[1,1 ] (Y) length L2 (for G17) 0 mm$TC_DP5[1,1 ] (X) length L3 (for G17) 0 mm$TC_DPC1[1,1] 1st angle (rotation by Z) 0 °$TC_DPC2[1,1] 2nd angle (rotation by Y) 0 °$TC_DPC3[1,1] 3rd angle (rotation by X) 0 °
XHP
YHP
ZHP
240 L1
XFL
YFL
ZFL
TCP
XTCS
YTCS
ZTCS
9 Coordinate systems
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 89
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
9.3.2 Flange coordinate system for multipart tools
For multipart tools, the tool carrier (e.g. milling spindle) becomes part of the ROBXrobot transformation. The machine data in the following table allows the flangecoordinate system to be offset and rotated arbitrarily compared with the manualaxis coordinate system. Figure 9-5 shows this as example for a milling spindle forwhich the flange coordinate system lies at the milling spindle flange. The rotation ofthe flange coordinate system compared with the manual axis coordinate system isentered in N62911 $MC_ROBX_TFLWP_RPY[0-2]. The reference point forprogramming the milling tool is milling spindle flange. The tool is defined with thetool lengths L1, L2 and L3. A tool rotation can also be programmed (see Table 9-4).
Figure 9-5: Parameterization of a multipart tool using a milling spindle as example
L1
TCP
XHP
YHP
ZHP
XFL
YFL
ZFL
240 150
200
XTCS
YTCS
ZTCS
9 Coordinate systems
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 90
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Table 9-4Machine data Value UnitN62910 $MC_ROBX_TFLWP_POS[0] = 200 mmN62910 $MC_ROBX_TFLWP_POS[1] = 0 mmN62910 $MC_ROBX_TFLWP_POS[2] = 240 + 150 390 mmN62911 $MC_ROBX_TFLWP_RPY[0] = 0 degreesN62911 $MC_ROBX_TFLWP_RPY[1] = -90 degreesN62911 $MC_ROBX_TFLWP_RPY[2] = 0 degrees$TC_DP3[1,1 ] (Z) length L1 (for G17) 125 mm$TC_DP4[1,1 ] (Y) length L2 (for G17) 0 mm$TC_DP5[1,1 ] (X) length L3 (for G17) 0 mm$TC_DPC1[1,1] 1st angle (rotation by Z) 0 °$TC_DPC2[1,1] 2nd angle (rotation by Y) 0 °$TC_DPC3[1,1] 3rd angle (rotation by X) 0 °
A detailed description of the ROBX robot transformation is available in the separate“ROBX transformation function description” documentation.
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 91
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
10 ProgrammingThe two most common methods of programming robots are described below.Further programming possibilities, such as orientation programming with the A3,B3 and C3 vectors, are described in the “SINUMERIK 840D sl / 828Dfundamentals” programming manual.
10.1 Axial programmingThe transformation must be deactivated for axial programming. This is done withthe TRAFOOF modal programming command. Finally, an axial position can beentered. The axial position applies to the machine axes in the channel.Example:N15 Trafoof
N16 G0 RA1=0.0000 RA2=-90.0000 RA3=90.0000 A=0.0000 B=0.0000C=0.0000
10.2 Cartesian programming with virtual rotary axis angles
The transformation must be activated for Cartesian programming. This is done withthe TRAORI modal programming command. Finally, a Cartesian position X, Y, Z,and an orientation A, B, C can be made.Example:N15 Traori
N16 G1 X1336.4283 Y1016.1269 Z426.6311 A=136.0484 B=-32.2151C=160.9643 F2000
10.3 Orientation programming
The orientation is programmed via virtual rotary axis angle A, B, C. In this manner,the TCS (Tool Coordinate System) is rotated relative to a reference coordinatesystem. The reference coordinate system can be either the machine coordinatesystem (MCS) or the workpiece coordinate system (WCS).
10.3.1 ORIMKS/ORIWKS
The reference system active for the orientation programming is set with theORIMKS and ORIWKS programming commands.ORIMKS: The reference system is the machine coordinate systemORIWKS: The reference system is the workpiece coordinate system
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 92
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
10.3.2 ORIVIRT1
The rotation sequence for the interpretation of the orientation angle A, B, C isspecified by the machine data $MC_ORIAX_TURN_TAB_1[0-2]. The followingtable shows the default setting:Table 10-1
Machine data Value Unit
N21120 $MC_ORIAX_TURN_TAB_1[0] = 1First rotation about X (Aturns about X)
N21120 $MC_ORIAX_TURN_TAB_1[1] = 2Second rotation about Y(B turns about Y‘)
N21120 $MC_ORIAX_TURN_TAB_1[2] = 3Third rotation about Z (Cturns about Z‘‘)
The programming of the ORIVIRT1 command activates the turning sequence set inthe $MC_ORIAX_TURN_TAB_1[0-2] machine data.The following programming example and the associated figures show theorientation programming in the machine coordinate system (ORIMKS) withoutactive tool. The following table shows the associated actual value display inSINUMERIK Operate.N12 G500
N13 ORIMKS
N14 ORIVIRT1
N15 Traori
N16 G1 X1590 Y0 Z1784 A=0 B=-90 C=0 F2000
Figure 10-1: Example for programmed rotation A=0 B=-90 C=0 with ORIVIRT1
X1
Y1
Z1
A = 0 B = -90 C = 0
X2
Y2
Z2 X3 Y3
Z3
X4 Y4
Z4
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 93
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Figure 10-2: Orientation programming (ORIMKS) for KUKA KR300 R2500 without tool
Table 10-2WCS actual value MCS actual value
XTCS
YTCS
ZTCS
XMCS
YMCS
ZMCS
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 94
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
A further program example shows the orientation programming in the workpiececoordinate system (ORIWKS) with active tool (configuration from Section 9.3.2).Table 10-3 shows the associated actual value display in SINUMERIK Operate.
;$P_UIFR[1]=CTRANS(X,1669,Y,0,Z,490):CROT(X,0,Y,0,Z,90)
N12 T=“T8MILLD20“ D1 ; $TC_DP3[1,1]=135
N13 ORIWKS
N14 ORIVIRT1
N15 Traori
N16 G54
N17 G1 X0 Y-71 Z959 A=0 B=0 C=-90 F2000
Figure 10-3: Orientation programming (ORIMKS) for KUKA KR300 R2500 with tool
XWCS
YWCS
ZWCS
XTCS
YTCS
ZTCS
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 95
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Table 10-3WCS actual value MCS actual value
Further types of orientation programming are contained in the “SINUMERIK 840Dsl / 828D Fundamentals” and “SINUMERIK 840D sl / 828D Job Planning”programming manuals.
10.4 Cartesian PTP travel
General Information about Cartesian PTP travel is contained in the “SINUMERIK840D sl / 828D Function Manual Extended Functions“ manual in Section 6.6Cartesian PTP travel.
10.4.1 Function
This function allows a Cartesian position to be approached with a synchronous axismotion. It is particularly useful in cases where, for example, the position of the jointis changed causing the axis to move through a singularity. When an axis passesthrough a singularity, the feed velocity would normally be reduced or the axis itselfoverloaded.
10.4.2 Activation
The function is activated by programming the PTP command. The function can bedeactivated again with the CP command. Both these commands are contained in Ggroup 49.· PTP command: The programmed Cartesian position is approached with a
synchronized axis motion (PTP=point-to-point)· CP command: The programmed Cartesian point is approached with a path
motion (default setting), (CP=continuous path)· PTPG0 command: The programmed Cartesian PTP motion is performed
automatically with each G0 block. The CP command is then set again.
10.5 Programming of the position with STAT (State)
A Cartesian position must be convertible into unique axis angles. For this reason,the position of the joints must be entered in the STAT address. The STAT address
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 96
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
contains a bit for every possible setting as a binary value. Three different positionsexist for the ROBX robot transformation. Their meaning follows:Bit 0: Shoulder left/rightBit 1: Elbow up/downBit 2: Handflip / no Handflip
The following program examples illustrate the use of the STAT command. Theconfiguration from Section 9.3.2 is used.N14 T=“T8MILLD20“ D1 ; $TC_DP3[1,1 ]=132.95
N16 ORIMKS
N17 G1 PTP X1665.67 Y0 Z1377.405 A=0 B=0 C=0 STAT=’B001’ F2000
Table 10-4
Programming Graphics
STAT = 1 (‘B001’)
Bit 0: 1à Shoulder leftBit 1: 0à Elbow downBit 2: 0à no Handflip
N14 T=“T8MILLD20“ D1 ; $TC_DP3[1,1 ]=132.95
N16 ORIMKS
N17 G1 PTP X1665.67 Y0 Z1377.405 A=0 B=0 C=0 STAT=’B010’ F2000
Table 10-5
Programming Graphics
STAT = 2 (‘B010’)
Bit 0: 0à Shoulder rightBit 1: 1à Elbow upBit 2: 0à no Handflip
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 97
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
N14 T=“T8MILLD20“ D1 ; $TC_DP3[1,1 ]=132.95
N16 ORIMKS
N17 G1 PTP X1665.67 Y0 Z1377.405 A=0 B=0 C=0 STAT=’B101’ F2000
Table 10-6
Programming Graphics
STAT = 5 (‘B101’)
Bit 0: 1à Shoulder leftBit 1: 0à Elbow downBit 2: 1à Handflip
N14 T=“T8MILLD20“ D1 ; $TC_DP3[1,1 ]=132.95
N16 ORIMKS
N17 G1 PTP X1665.67 Y0 Z1377.405 A=0 B=0 C=0 STAT=’B110’ F2000
Table 10-7
Programming Graphics
STAT = 6 (‘B110’)
Bit 0: 0à Shoulder rightBit 1: 1à Elbow upBit 2: 1à Handflip
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 98
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
10.6 Rotary axis sign bit TU (Turn)
In order to approach axis angles in excess of ±180° without ambiguity, theinformation must be programmed in the TU (turn) address. The TU address sorepresents the sign of the axis angle. This allows an axis angle of |θ| < 360° to betraversed without ambiguity.
The TU variable contains a bit that indicates the traversing direction for every axisinvolved in the transformation.· TU bit = 0: 0° ≤ θ < 360°· TU bit = 1: 360° < θ < 0°
The TU bit is set to 0 for linear axes. In the case of axes with a traversing range>±360°, the axis always moves across the shortest path because the axis positioncannot be specified uniquely by the TU information. If no TU is programmed for aposition, the axis always traverses via the shortest possible route. In the examplein Figure 10-4, the shortest path is in the negative direction.
Figure 10-4: Programming example for the TU command
Target position
Negative direction:
Positive direction:
Starting position
10 Programming
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 99
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
10.7 Sample program
The following part program illustrates the commands explained in Chapter 7:N1 G90
N2 T=“T8MILLD20“ D1 M6
N3 TRAORI
;$P_UIFR[1]=CTRANS(X,1500,Y,0,Z,400):CROT(X,0,Y,0,Z,-90)
N4 G54
N5 M3 S20000
N6 ORIWKS
N7 ORIVIRT1
N8 CYCLE832(0.01,_FINISH,1)
;HOME
N9 TRAFOOF
N10 G0 RA1=0.0000 RA2=-90.0000 RA3=90.0000 A=0.0000 B=90.0000C=0.0000
N11 TRAORI
N12 G54
N13 G0 PTP X1369.2426 Y956.7528 Z502.5517 A=135.5761 B=-33.2223C=161.1435 STAT=’B010’ TU=’B001011’
N14 G0 X1355.1242 Y1014.9394 Z424.9695 A=135.8491 B=-33.1439C=160.9941 STAT=’B010’ TU=’B001011’
N15 G1 CP X1354.8361 Y1016.1269 Z423.3862 A=136.0635 B=-33.0819C=160.8770 F1000
N16 G1 X1336.4283 Y1016.1269 Z426.6311 A=136.0484 B=-32.2151C=160.9643 F2000
N17 G1 X1317.9831 Y1016.1269 Z429.6730 A=136.0175 B=-31.3394C=161.0655
;HOME
N18 TRAFOOF
N19 G0 RA1=0.0000 RA2=-90.0000 RA3=90.0000 A=0.0000 B=90.0000C=0.0000
N20 M30
11 Appendix
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 100
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
11 Appendix11.1 Service & Support
A unique and complete range of services over the entire life cycleIrrespective whether you are a machine manufacturer, solution provider or plant operator:The service offering from Siemens Industry Automation and Drive Technologies includescomprehensive services for a wide range of different users in all sectors of themanufacturing and process industry.To accompany our products and systems, we offer integrated and structured services thatprovide valuable support in every phase of the life cycle of your machine or plant – fromplanning and implementation through commissioning to maintenance and modernization.Our Service & Support accompanies you worldwide in all matters concerning automationand drives from Siemens. We provide direct on-site support in more than 100 countriesthrough all phases of the life cycle of your machines and plants.An experienced team of specialists provides you with active support and bundled know-how.Regular training courses and intensive contact among our employees – even acrosscontinents – ensure reliable service in the most diverse areas.
Online supportThe comprehensive online information platform supports you in all aspects of our Service &Support at any time and from any location in the world. The online support can be found atthe following Internet address.
Technical consultingSupport with the planning and design of your project: From detailed analysis of the currentsituation and definition of objectives through advice on products and systems through todesigning the automation solution.
Technical supportCompetent advice for technical questions with a broad spectrum of carefully tailoredservices for all our products and systems. The technical support can be found at thefollowing Internet address.
TrainingExtend your lead with practice-oriented know-how direct from the manufacturer. Our trainingcourse program can be found at the following Internet address.
11 Appendix
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 101
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
Engineering supportSupport with project engineering and development with services tailored to requirementsfrom configuration through to implementation of an automation project.
Field serviceOur field service offers you services for commissioning and maintenance to ensure that yourmachines and plants are always available.
Spare partsIn every sector worldwide, plants and systems are required to operate with ever increasingavailability. We will provide you with the support you need to prevent a standstill fromoccurring in the first place: with a worldwide network and optimum logistics chains.
RepairsDowntimes cause problems in the plant as well as unnecessary costs. We can help you toreduce both to a minimum – with our worldwide repair facilities.
OptimizationOver the operating life of machines or plants, considerable potential arises for increasingproductivity or saving costs. In order to track these down for you, we offer you a whole rangeof services for optimization.
ModernizationYou can also rely on our support when it comes to modernization – with comprehensiveservices from the planning phase all the way to commissioning.
Service programsOur service programs are selected service packages for an automation and drives system orproduct group. The individual services are coordinated with each other to ensure smoothcoverage of the entire life cycle, and support optimum use of your products and systems.The services of a service program can be flexibly adapted at any time and usedindependently of each other.Examples of service programs:· Service contracts
· Plant IT Security Services
· Life Cycle Services for Drive Engineering· SIMATIC PCS 7 Life Cycle Services
· SINUMERIK Manufacturing Excellence· SIMATIC Remote Support Services
The advantages at a glance:
· Minimized downtimes for increased productivity
· Optimized maintenance costs due to a tailored scope of services· Costs that can be calculated and therefore planned
· Service reliability thanks to guaranteed response times and spare part delivery times· Customer service personnel supported and relieved of additional tasks
· Comprehensive service from a single source, fewer interfaces and improved know-how
Contact personFor you on-site, worldwide: Partner for consulting, sales, training, service, support, spareparts... for the complete offering from Industry Automation and Drive Technologies. You canfind your personal contact in our contact database in the Internet.
11 Appendix
SINUMERIK Integrate Run MyRobot /MachiningBeitrags-ID 109478857, V2.0, 09/2015 102
ãSi
emen
sAG
2015
Allr
ight
sre
serv
ed
11.2 ReferencesTable 11-1
Topic Title
\1\ Siemens IndustryOnline Support
http://support.industry.siemens.com
\2\ Download page ofthe article
https://support.industry.siemens.com/cs/ww/en/view/109478857
\3\ KUKA KRC4Safe Operations
KST_SafeOperation_32_en.pdfKUKA Roboter GmbH
\4\ KUKA KRC4Operating andProgramming
KSS_83_SI_en.pdfKUKA Roboter GmbH
\5\ KUKA KRC4Profinet
KUKA_ProfiNet_32_en.pdfKUKA Roboter GmbH
11.3 HistoryTable 11-2
Version Date Revision
V2.0 09/2015 First Release rmr/koe