Академический Документы
Профессиональный Документы
Культура Документы
Application example for connection of a KUKA robot with KR C4 to a SINUMERIK 840D sl with NCU 7x0.3
SINUMERIK Integrate Run MyRobot Application Description March 2013
Siemens Industry Online Support This article originates from the Siemens Industry Online Support. The following link takes you directly to the download page for this document: http://support.automation.siemens.com/WW/view/de/67701073
Caution: The functions and solutions described in this article are limited primarily to the implementation of the automation task. Please also observe that in case of networking your plant/system with other plant units, the company network or the Internet, appropriate protective measures within the framework of industrial security must be adopted. For more information, see the Article ID 50203404. http://support.automation.siemens.com/WW/view/de/50203404
You should also actively use our Technical Forum in the Siemens Industry Online Support for this topic. Discuss your questions, suggestions or problems together with our strong forum community: http://www.siemens.de/forum-applikationen
Copyright Siemens AG 2013 All rights reserved RMR_DOKU_V20_E_l.doc
Introduction
1 2 3 4 5 6 7 8 9
Fundamentals
Programming
Start-up
Lists
Messages
References
Copyright Siemens AG 2013 All rights reserved
Contacts
History
Siemens shall not be held liable for the information provided in this document. We accept no liability for any damage or loss caused by the examples, information, programs, planning data or performance data described in this application example, irrespective of the legal basis for claims arising from such damage or loss, unless liability is mandatory. For example, according to the product liability law, in cases of malfeasance, gross negligence, due to endangerment of life, body or health, due to assumption of a guarantee for a product's characteristics of state, due to malicious concealment of a defect or due to violation of basic contractual obligations. However, claims for indemnification based on breach of contract shall be limited to liability for damages to the contract-specific, foreseeable damages, provided there is no mandatory liability for intent, acts of gross negligence, harm to the life, body and health of human beings. Any change to the burden of proof to your disadvantage is not covered hereby. Any form of duplication of these application examples or excerpts hereof is not permitted without the express consent of Siemens Industry Sector.
Sources: Several pictures and texts with courtesy of KUKA Roboter GmbH, Augsburg.
Preface
Preface
The flexible automation of machine tools requires to load and unload the machine using robots. Modifications such as selecting a new part type shall be made by the user. This selection should either automatically act on the robots or should be carried out in the normal machine operation. Furthermore, all cell-related operator actions should include the robot in accordance with the principle of the "Single Point of Operation" using a single operator control unit. This includes interactions, such as normal operation, retraction, teaching and diagnostics. KUKA Roboter and Siemens Drive Technologies have developed a simple and efficient solution environment. For this purpose, KUKA created the mxAutomation function block library with which the motion sequence of the robot can be programmed completely in SINUMERIK . This allows the robot program to be created completely without special knowledge using PLC programming tools with Siemens STEP7. This programming is enabled by the SINUMERIK Operate user interface as part of this application example. This allows the robot to be programmed within the SINUMERIK NC cycles programming. Additionally the robot can be traversed manually (jog). The sequence of the machine tool and robot program can be tracked and controlled in parallel channels on the SINUMERIK Operate user interface. The SINUMERIK hand-held terminal HT8 and the user interface can be used to "teach" not only machine tool-related setup actions, but in the same operating philosophy, also the path points and functions of the robot. All of this by using a single handheld terminals. The mxAutomation blocks in the PLC within SINUMERIK "command" the robot using a PROFINET interface. For example to send programmed commands such as a movement to a position in cartesian or axial positions. As usual, the execution of the robot motions and the robot safety functions as well as other robot-specific functions are handled by the KUKA KR C4 robot controller. Programmed block-end positions in the workpiece or machine coordinate system are transferred. Figure 0-1 Coupling of the robot based on programmed positions
Preface
Restriction This application example does not include a description About the basic STEP7 programming About the technological structure and the operation of the robot For the installation of the robot / KUKA controller
Required knowledge Basic knowledge of NC and PLC programming of the SINUMERIK 840D sl and PROFINET are assumed.
Key content of this application This application deals with the following key features:
Copyright Siemens AG 2013 All rights reserved
Table of Contents
Table of Contents
Warranty and liability ................................................................................................... 4 Preface .......................................................................................................................... 5 Table of Contents ......................................................................................................... 7 1 Introduction ........................................................................................................ 9 1.1 1.2 2 Objective and purpose ......................................................................... 9 Hardware components and structure ................................................. 10
Basic information ............................................................................................ 12 2.1 2.2 2.2.1 2.2.2 2.2.3 2.3 Terms used ........................................................................................ 12 Definition of a traversing contour ....................................................... 13 Elements of a traversing contour ....................................................... 13 Conventions for the definition of a traversing contour ........................ 14 Approach strategies ........................................................................... 15 Robot coordinate systems .................................................................. 16
Programming ................................................................................................... 18 3.1 3.1.1 3.1.2 3.1.3 3.1.4 3.2 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.4 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.6 3.5 3.5.1 3.5.2 Setup .................................................................................................. 19 Approximation parameters ................................................................. 19 Orientation control for linear motion ................................................... 22 Orientation control for circular motion ................................................ 24 Specification of the coordinate system ............................................... 25 Motions ............................................................................................... 27 Straight line block ............................................................................... 30 Straight line block with GUD positions ............................................... 33 Circular block ...................................................................................... 34 Circular block with GUD positions ...................................................... 37 Machine axes direct block .................................................................. 39 Read data ........................................................................................... 41 Read load data ................................................................................... 42 Read base data .................................................................................. 44 Read tool data .................................................................................... 45 Reading the software limit switch of the robot axes ........................... 46 Reading the software limit switch of the supplementary axes ........... 47 Read system variables ....................................................................... 48 Write data ........................................................................................... 49 Write load data ................................................................................... 50 Write base data .................................................................................. 52 Write tool data .................................................................................... 54 Writing the software limit switch of the robot axes ............................. 56 Writing the software limit switch of the supplementary axes .............. 58 Write system parameter ..................................................................... 60 Safety ................................................................................................. 62 Brake test ........................................................................................... 63 Mastering test ..................................................................................... 66
Start-up ............................................................................................................. 68 4.1 4.1.1 4.1.2 4.2 4.2.1 4.2.2 4.3 4.3.1 Prerequisites/versions ........................................................................ 68 Hardware ............................................................................................ 68 Software ............................................................................................. 68 Communication .................................................................................. 69 Industrial Ethernet .............................................................................. 69 PROFINET ......................................................................................... 69 NC ...................................................................................................... 70 Channel and axes .............................................................................. 70
Table of Contents
4.3.2 4.3.3 4.3.4 4.4 4.4.1 4.4.2 4.4.3 4.5 4.5.1 4.5.2 4.5.3 4.6 4.6.1 4.6.2 4.6.3 4.7 4.7.1 4.7.2 4.7.3 4.7.4 5
RMCC/EXPD ...................................................................................... 71 GUDs and macros .............................................................................. 71 Cycles ................................................................................................. 72 PLC..................................................................................................... 73 Hardware configuration ...................................................................... 73 Reboot (OB100) ................................................................................. 76 Cyclically (OB1) .................................................................................. 76 Safety Integrated ................................................................................ 79 Machine data ...................................................................................... 79 NCK (SAFE.SPF) ............................................................................... 79 PLC (FC3000) .................................................................................... 81 Operate............................................................................................... 83 Robot diagnosis .................................................................................. 83 Cycle support ..................................................................................... 87 Messages/alarms ............................................................................... 87 Robots ................................................................................................ 88 Diagnosis support ............................................................................... 88 PROFIsafe .......................................................................................... 91 Delay time .......................................................................................... 91 Automatic external message acknowledgement ................................ 91
Lists................................................................................................................... 93 5.1 5.1.1 5.1.2 5.1.3 5.1.4 5.2 5.2.1 5.2.2 5.2.3 5.3 5.4 5.5 5.6 5.6.1 5.6.2 5.7 5.7.1 5.7.2 5.7.3 5.7.4 5.7.5 Interface-DB (DB700) ......................................................................... 93 Signals to the RMR ............................................................................ 93 Signals from the RMR ........................................................................ 95 RMR configuration .............................................................................. 98 KRC actual values .............................................................................. 98 DualPortRam .................................................................................... 100 Cyclically: Positions .......................................................................... 100 Acycl. basic functions: Motions and settings .................................... 101 Acycl. basic functions: Reading/writing data .................................... 104 Basic functions: JOB overview ......................................................... 107 Global user data (GUD9).................................................................. 108 Macros .............................................................................................. 108 KUKA Safe Operations..................................................................... 111 Safe inputs of the KRC ..................................................................... 111 Safe outputs of the KRC................................................................... 114 Resource requirement ...................................................................... 117 Dual Port RAM ................................................................................. 117 NC memory ...................................................................................... 117 Inputs/outputs ................................................................................... 117 PLC................................................................................................... 117 SPL (INSEP/OUTSEP) ..................................................................... 117
Messages ........................................................................................................ 118 6.1 6.2 6.2.1 6.2.2 6.2.3 From Run MyRobot .......................................................................... 118 From KUKA mxAutomation .............................................................. 119 From the robot interpreter ................................................................ 119 From the Submit Interpreter ............................................................. 123 Error messages in the function block ............................................... 129
References ..................................................................................................... 132 7.1 7.2 References ....................................................................................... 132 Internet links ..................................................................................... 132
8 9
1 Introduction
1
1.1
Introduction
Objective and purpose
The SINUMERIK 840D sl CNC in conjunction with SINUMERIK Integrate: Run MyRobot allows robots to be deployed optimally for handling tasks at machine tools. The KUKA KR C4 connects the motion and safety control homogeneously. This ensures the optimum dynamics coupled with safety for man and machine. The system is characterized with its high flexibility and very dynamic kinematics. The connection between the SINUMERIK 840D sl high-end CNC from Siemens and KUKA's KR C4 controller is made using a command interface. KUKA.PLC mxAutomation S7 is a loadable technology package with which a robot can be programmed and controlled using an external PLC. It offers the following functionality: PLC library with function blocks for programming automation tasks in Step 7 Sending of messages generated on the smartHMI to an external system via UDP
NC-Kernel
1 Introduction
1.2
Hardware components
Table 1-1 Hardware components Component SINUMERIK NCU 7x0.3 PN Qty. 1 Order number Note
Additional machining channels RMCC/EXPD External Position Display SINUMERIK INTEGRATE RUN MYHMI/3 SINUMERIK INTEGRATE RUN MYSCREENS SI-Comfort including one axis and 64 SPL I/Os
1 1 1 1 1
6FC5800 - 0AC10 - 0YB0 6FC5800 - 0AN64 - 0YB0 6FC5800 - 0AP60 - 0YB0 6FC5800 - 0AP64 - 0YB0 6FC5800 - 0AM64 - 0YB0
10
1 Introduction
Sample files and projects The list below contains all the files and projects used in this example.
Table 1-3 Sample files and projects Component RMR_V20.zip RMR_DOKU_V20_D.pdf Note This packed file contains the STEP7 project and the complete application example. This document.
11
2 Basic information
2
2.1
Basic information
Terms used
Table 2-1 Terms used in this application Term Axis group Description Depending on the machine data configuration, an axis group contains the following axes: to A6 External axes E1 E6 (synchronous or asynchronous) Procedure with which a data storage is processed First In First Out: Those elements that were saved first will be taken first from the memory. KUKA Robot Controller KUKA Robot Language KUKA smart Human Machine Interface Teach pendant of the KUKA controller KUKA.PLC mxAutomation S7 technology package on the robot controller Ethernet/IP is a field bus based on Ethernet. The robot interpreter is a synchronously running process in which the current robot program is executed. The robot is moved to the coordinates of the motion block in which the block pointer is located. This allows the robot position be brought to match the coordinates of the current point. Programmable Logic Controller The Submit interpreter is a cyclically running logic program that runs on the robot controller in parallel to the motion program. Engineering environment for KR C4-controlled robot cells SINUMERIK Integrate Run MyRobot
FIFO
12
2 Basic information
2.2
2.2.1
Simple contour elements, such as straight lines and arcs are normally used to define a traversing contour. Such contour elements usually also suffice to describe complex traversing contours.
13
2 Basic information
2.2.2
A traversing contour is always a contiguous path along which the axes of the machine kinematics should move. This means, the following is true for the start of a contour element: The current position of the machine axes always serves as start point of the first contour element of a traversing contour. The target point of each preceding contour element of the traversing contour serves as start point of all further contour elements within the traversing contour. Because of these conventions for the definition of a traversing contour, it suffices for the programming of a traversing contour to specify only the type of the contour element, e.g. straight line or arc, and the desired target point of the contour element for each contour element.
14
2 Basic information
2.2.3
Approach strategies
Because the current position of the machines axes is always used as start point for the first contour element of a traversing contour, it is desirable to also consider an exact approach strategy for the definition of a traversing contour. If the machining of a workpiece needs to be interrupted within a traversing contour, the machine axes are normally located at a position that is not suitable for restarting the traversing contour. For this reason, a straight line on the desired start point of the contour should always be specified as first contour element of a traversing contour. If, however, you require full assurance, the approach strategy should be extended to three straight lines: The first straight line positions the axes of the machine kinematics at a safety level above the workpiece in which all axes can traverse without collision with the workpiece or machine. The second straight line positions the axes in the safety level above the start point of the contour. The third straight line is then used to approach the actual start point of the contour of the workpiece.
Copyright Siemens AG 2013 All rights reserved
This should permit safe approach to the start point of the contour from any position of the machine kinematic axes without danger to the machine and the workpiece.
15
2 Basic information
2.3
WORLD The WORLD coordinate system is a predefined Cartesian coordinate system. It is the base coordinate system for the ROBROOT and BASE coordinate systems. The WORLD coordinate system is defined as default setting in the robot foot.
ROBROOT The ROBROOT coordinate system is a Cartesian coordinate system that always lies in the robot foot. It describes the position of the robot in reference to the WORLD coordinate system. The ROBROOT coordinate system is identical as default setting with the WORLD coordinate system. $ROBROOT can be used to define an offset of the robot to the WORLD coordinate system.
16
2 Basic information
BASE The BASE coordinate system is a Cartesian coordinate system that describes the position of the workpiece. It refers to the WORLD coordinate system. The BASE coordinate system is identical as default setting with the WORLD coordinate system. It is moved by the user into the workpiece.
TOOL The TOOL coordinate system is a Cartesian coordinate system that lies in the working point of the tool. The origin of the TOOL coordinate system lies as default setting in the flange center. (It is then called the FLANGE coordinate system.) The TOOL coordinate system is moved by the user to the working point of the tool.
17
3 Programming
Programming
After selection of the desired program in the Program Manager, the program editor is started.
Figure 3-1 Program start page
The "Robot" softkey in the horizontal softkey bar is used to display further softkeys that can be used to perform various actions:
Figure 3-2 Robot: Menu structure
18
3 Programming
The assignment of the horizontal and vertical softkey bar corresponds to the following layout: Horizontal softkeys (HSK) Current function group
3.1
Setup
3.1.1 Approximation parameters
Approximate positioning means: The programmed point is not approached exactly. Rather, approximate positioning is performed between the individual path sections at the block transitions. instruction that initiates an advance run stop follows. Approximate positioning is possible only when "0: Direct(Submit)" or "1: Accept" is set as stepping condition. Approximate positioning is possible only when after the motion instruction, a motion instruction that is transferred in the buffered mode follows.
19
3 Programming
Description
Specifies whether and how the target point of a PTP motion is approximated. Specifies whether and how the target point of a CP motion (LIN, CIRC) is approximated.
Approximation distance for PTP motions(= distance before the target point at which the approximate positioning begins at the earliest) 1 100% Maximum distance 100 %: Half the distance between the start point and the target point based on the contour of the PTP motion without approximate positioning
CDIS
REAL
Distance parameter (unit: mm) The approximate positioning begins at the earliest when the distance to the target point exceeds the value specified here.
CORI
REAL
Orientation parameter (unit: ) The approximate positioning begins at the earliest when the dominating orientation angle (turning or swiveling of the tool longitudinal axis) undershoots the angular distance to the target point specified here.
CVEL
INT
Velocity parameter 1 100% The approximation parameter specifies at which percentage value of the programmed velocity the approximate positioning in the braking phase to the target point begins at the earliest.
20
3 Programming
Table 3-2 PTP_APO (INT) Approximate positioning for PTP motions Value 0 1 C_PTP Name Description Without approximate positioning Causes approximate positioning to the target point The C_PTP value suffices for PTP-PTP approximate positioning. For the PTP-CP approximate positioning, i.e. when an LIN or CIRC block follows after the approximately positioned PTP block, another approximation parameter must be specified. 2 3 4 C_PTP, C_DIS C_PTP, C_ORI C_PTP, C_VEL PTP-CP approximate positioning with distance parameter (default) PTP-CP approximate positioning with orientation parameter PTP-CP approximate positioning with velocity parameter
Table 3-3 CP_APO (INT) Approximate positioning for CP motions (LIN, CIRC) Value 0
Copyright Siemens AG 2013 All rights reserved
Description Without approximate positioning Approximate positioning with distance parameter Approximate positioning with orientation parameter Approximate positioning with velocity parameter
1 2 3
RMR_SET_APO.SPF cycle parameters: N1000 PROC RMR_SET_APO(INT _PTP_MODE, INT _CP_MODE, INT _CPTP, REAL _CDIS, REAL _CORI, INT _CVEL) DISPLOF SBLOF
Table 3-4 RMR_SET_APO.SPF call parameters No. 1 2 3 4 5 6 Screen form parameters Approximate positioning for PTP motion Approximate positioning for CP motion Approximation distance Approximation position Angular distance Velocity Cycle parameters _PTP_MODE _CP_MODE _CPTP _CDIS _CORI _CVEL Meaning See Seite 20 Table 3-1 Approximation parameters
21
3 Programming
3.1.2
Table 3-5 OriType orientation control for the TCP Value 0 1 Name VAR CONSTANT Description The orientation of the TCP changes continuously during the motion. The orientation of the TCP remains constant during the motion. The programmed orientation for the target point is ignored and that of the start point retained. The orientation of the TCP changes continuously during the motion but not uniformly. This is done with linear transfer (axisspecific procedure) of the hand-axis angle. Note: This orientation type is not suitable when a specific characteristic of the orientation must be maintained exactly.
JOINT
22
3 Programming
23
3 Programming
3.1.3
Table 3-7 CircType orientation control for the circular motion Value 0 1 Name Base Path Description Base-related orientation control during a circular motion Path-related orientation control during a circular motion
24
3 Programming
Table 3-8 RMR_SET_ CIRCTYPE.SPF call parameters No. 1 Screen form parameters Orientation reference Cycle parameters _CIRC_TYPE Meaning See Seite 24 Table 3-7 CircType orientation control for the circular motion
3.1.4
Coordinate system on which the Cartesian coordinates of the target position for a KRC_Move or KRC_Jog motion are based.
25
3 Programming
Table 3-9 COORDSYS Element Start condition Number of the TOOL coordinate system Type INT INT Description See Seite 27 Table 3-11 Motions: General terms Number of the TOOL coordinate system -1: Coordinate system is not changed 0: NULLFRAME 1 16: TOOL_DATA[1 16] Number of the BASE coordinate system -1: Coordinate system is not changed 0: ZEROFRAME 1 32: BASE_DATA[1 32] Interpolation mode (IPO_MODE) 0: The tool is a fixed tool (#BASE). 1: The tool is mounted on the mounting flange (#TOOL).
INT
Interpolation mode
ENUM
N1000 PROC RMR_SET_COORDSYS(INT _START, INT _TOOL, INT _BASE, INT _IPO_MODE) DISPLOF SBLOF
Table 3-10 RMR_SET_ COORDSYS.SPF call parameters No. 1 2 3 4 Screen form parameters Start condition Number of the TOOL coordinate system Number of the BASE coordinate system Interpolation mode Cycle parameters _START _TOOL _BASE _IPO_MODE Meaning See oben Table 3-9 COORDSYS
26
3 Programming
3.2
Motions
Table 3-11 Motions: General terms Name Start condition Description Mode in which an instruction is performed on the robot controller 0 = direct/SUBMIT Instruction is performed directly by the Submit Interpreter (submit program). Note: This mode is not available for all function blocks.. 1 = ABORTING Instruction is performed immediately by the Robot Interpreter (main program). All active motions and buffered instructions are aborted beforehand and the robot brought to a complete standstill. This instruction cannot be approximately positioned. 2 = BUFFERED Instruction is buffered. Buffered instructions are processed by the Robot Interpreter (main program) according to the FIFO principle. Position What does the programmed position relate to? 0 = absolute The motion is performed relative to the set zero point. 1 = incremental The motion is performed relative to the current position. Approach How should the robot travel to the target point: 0 = direct (PTP=Point-to-Point) The robot performs the TCP along the fastest path to the target point. The fastest path is normally not the shortest path and so not a straight line. Because the robot axes rotate, arc-shaped paths can be traversed faster than straight paths. The exact motion path cannot be predicted. 1 = linear (CP = Continuous Path) The robot guides the TCP with the defined velocity along a straight line to the target point. Stepping When is stepping made to the next block: 0 = busy The action has been notified to the robot. 1 = active The planned action is performed. 2 = done The planned action has been performed successfully and has completed. Velocity Velocity 0 100%
27
3 Programming
Name
Description Refers to the maximum values specified in the robot machine data. The maximum value depends on the robot type and the set mode. 0% (= velocity is not changed)
Acceleration
Acceleration 0 100% Refers to the maximum values specified in the robot machine data. The maximum value depends on the robot type and the set mode. 0% (= velocity is not changed) The comment serves to identify the parameter set.
Comment
Teaching Teaching is defined as being the manual positioning of the axes and transfer of the axis positions to the part program. The teach screen forms can be used to define a part program for controlling the robot and so teach the robot points in its program (assigned positions). The motion type (absolute, incremental, direct/interpolated/curved) must always be selected. To now teach a position and use a code block in the part program, the axes must be traversed manually (jog mode) to the desired positions and then the "Accept position" softkey pressed. The data for X, Y, Z, A, B, C, STATE and TURN are accepted automatically. The remaining part program is described like a normal NC program with jumps, conditions, etc.
28
3 Programming
Note
The number of external axes (E1-E6) depends on the associated machine. The system hides any external axes that do not exist. This means only real axes are displayed.
Note
To approach a target position in the editor using softkeys, the coordinates must not contain any variables. If a variable exists at any location in the coordinates, the "Approach target position" softkey is grayed-out automatically and can no longer be activated.
PTP-Movement
LIN-Movement
29
3 Programming
3.2.1
E1-E6
REAL
30
3 Programming
CAUTION
The values for position (X, Y, Z) and orientation (A, B, C) of the TCP do not suffice to uniquely specify the position of a robot because different axis positions are possible for the same TCP. State and Turn are used to specify a unique position from several possible axis positions.
RMR_MOVE.SPF cycle parameters: N1000 PROC RMR_MOVE(INT _JobVar, REAL _X, REAL _Y, REAL _Z, REAL _A, REAL _B, REAL _C, INT _S, INT _T, INT _velo, INT _accel, REAL _E1, REAL _E2, REAL _E3, REAL _E4, REAL _E5, REAL _E6) DISPLOF SBLOF
Table 3-13 RMR_MOVE.SPF call parameters No. 1 2 3 4 5 6 7 8 9 10 Screen form parameters Start condition Target pos. X Target pos. Y Target pos. Z Target pos. O Target pos. B Target pos. C STATE TURN Velocity Cycle parameters _JobVar _X _Y _Z _A _B _C _S _T _velo Meaning See Seite 30 Table 3-12 E6POS
31
3 Programming
No. 11 12 Acceleration
Meaning
32
3 Programming
3.2.2
Note
An explanation of the coordinates and STATE / TURN can be found in Table 3-12 E6POS Seite 30
RMR_MOVE_P.SPF cycle parameters: N1000 PROC RMR_MOVE_P(INT _JobVar, INT _pNo, INT _velo, INT _accel) DISPLOF SBLOF
Table 3-14 RMR_MOVE.SPF call parameters No. 1 2 3 4 Screen form parameters Start condition Target position Velocity Acceleration Cycle parameters _JobVar _pNo _velo _accel Meaning See Seite 30 Table 3-12 E6POS Data set number of the GUD (global user data) See Seite 30 Table 3-12 E6POS
33
3 Programming
3.2.3
Figure 3-15 Circular block
Circular block
Table 3-15 Circle: Functions Name Target position Auxiliary position Meaning This specifies the diameter of the circular path based on the start position. The arc is drawn from the start point to the target position via this point. This specifies the radius of the circular path. Total or circle angle This determines the actual target point by specifying the number of degrees to be retracted from the specific circle (360).
Total angle
Note
An explanation of the coordinates and STATE / TURN can be found in Table 3-12 E6POS Seite 30
34
3 Programming
Note
RMR_MOVE_CIRC.SPF cycle parameters: N1000 PROC RMR_MOVE_CIRC(INT _JobVar, REAL _X, REAL _Y, REAL _Z, REAL _A, REAL _B, REAL _C, INT _S, INT _T, REAL _XH, REAL _YH, REAL _ZH, REAL _AH, REAL _BH, REAL _CH, INT _SH, INT _TH, REAL _angel, INT _velo, INT _accel, REAL _E1, REAL _E2, REAL _E3, REAL _E4, REAL _E5, REAL _E6, REAL _E1H, REAL _E2H, REAL _E3H, REAL _E4H, REAL _E5H, REAL _E6H) DISPLOF SBLOF
Table 3-16 RMR_MOVE_CIRC.SPF call parameters No. 1 2 3 4 5 6 7 8 9 Screen form parameters Start condition Target pos. X Target pos. Y Target pos. Z Target pos. O Target pos. B Target pos. C STATE TURN Cycle parameters _JobVar _X _Y _Z _A _B _C _S _T Meaning See Seite 30 Table 3-12 E6POS
35
3 Programming
No. 10 11 12 13 14 15 15 17 18 19 20 21 22 23 24
Copyright Siemens AG 2013 All rights reserved
Screen form parameters Auxiliary pos. X Auxiliary pos. Y Auxiliary pos. Z Auxiliary pos. O Auxiliary pos. B Auxiliary pos. C STATE TURN Total angle Velocity Acceleration Target pos. External axis 1 Target pos. External axis 2 Target pos. External axis 3 Target pos. External axis 4 Target pos. External axis 5 Target pos. External axis 6 Auxiliary pos. External axis 1 Auxiliary pos. External axis 2 Auxiliary pos. External axis 3 Auxiliary pos. External axis 4 Auxiliary pos. External axis 5 Auxiliary pos. External axis 6
Cycle parameters _XH _YH _ZH _AH _BH _CH _SH _TH _angel _velo _accel _E1 _E2 _E3 _E4 _E5 _E6 _E1H _E2H _E3H _E4H _E5H _E6H
Meaning
25 26 27 28 29 30 31 32
36
3 Programming
3.2.4
Note
An explanation of the coordinates and STATE / TURN can be found in Table 3-12 E6POS Seite 30 An explanation of the terms target/auxiliary position and total angle can be found in the Table 3-15 Circle: Seite 34.
RMR_MOVE_CIRC_P.SPF cycle parameters: N1000 PROC RMR_MOVE_CIRC_P(INT _JobVar, INT _pNo, INT _pNoH, REAL _angel, INT _velo, INT _accel) DISPLOF SBLOF
Table 3-17 RMR_MOVE_CIRC_P.SPF call parameters No. 1 2 3 4 5 6 Screen form parameters Start condition Target position Auxiliary position Total angle Velocity Acceleration Cycle parameters _JobVar _pNo _pNoH _angel _velo _accel Meaning See Seite 30 Table 3-12 E6POS Data set number of the GUD (global user data) Auxiliary position data set number of the GUD See Seite 27 Table 3-11 Motions: General terms
37
3 Programming
38
3 Programming
3.2.5
Table 3-18 E6AXIS Element A1 A2 A3 A4 A5 A6 E1-E6 Type REAL REAL REAL REAL REAL REAL REAL Description Position of the robot axis A1 (unit: mm or ) Position of the robot axis A2 (unit: mm or ) Position of the robot axis A3 (unit: mm or ) Position of the robot axis A4 (unit: mm or ) Position of the robot axis A5 (unit: mm or ) Position of the robot axis A6 (unit: mm or ) Position of the robot axes E1-E6 (unit: mm or )
Angle or translation values of the axes of an axis group for a KRC_MoveAxis motion command.
RMR_MOVE_AXIS.SPF cycle parameters: N1000 PROC RMR_MOVE_AXIS(INT _JobVar, REAL _A1, REAL _A2, REAL _A3, REAL _A4, REAL _A5, REAL _A6, INT _velo, INT _accel, REAL _E1, REAL _E2, REAL _E3, REAL _E4, REAL _E5, REAL _E6) DISPLOF SBLOF
39
3 Programming
Screen form parameters Start condition Target pos. A1 Target pos. A2 Target pos. A3 Target pos. A4 Target pos. A5 Target pos. A6 Velocity Acceleration Target pos. E1 Target pos. I2 Target pos. E3 Target pos. I4 Target pos. I5 Target pos. I6
Cycle parameters _JobVar _A1 _A2 _A3 _A4 _A5 _A6 _velo _accel _E1 _E2 _E3 _E4 _E5 _E6
Meaning See Seite 30 Table 3-12 E6POS See Seite 39 Table 3-18 E6AXIS
See Seite 27 Table 3-11 Motions: General terms See Seite 39 Table 3-18 E6AXIS
15
40
3 Programming
3.3
Read data
"Read data" contains information about the payload / base and tool data, as well as information about the software limit switch and (predefined) system data that can be read from the robot. For activation of the screen form, a data set to be read must first be entered. The data currently stored in the NC is then displayed. Clicking the softkey "RC: Read data" displays the data currently exported from the robot.
41
3 Programming
3.3.1
Table 3-20 Read data: Parameters Parameters Data set M X, Y, Z A, B, C JX, JY, JZ Type INT REAL REAL REAL REAL Description Data set number (TOOL/BASE) Weight in kg Position of the center of gravity relative to the flange Orientation of the main inertia axes relative to the flange Moment of inertia
42
3 Programming
Table 3-21 RMR_RD_LOAD_DATA.SPF call parameters No. 1 Screen form parameters Data set Cycle parameters _DATASET Meaning See Seite 42 Table 3-20 Read data: Parameters
Supplementary load data The supplementary load data can be exported from the robot controller. Reference systems of the X, Y, Z values per supplementary load:
Reference system ROBROOT coordinate system A1 = 0 ROBROOT coordinate system A2 = -90 Flange coordinate system A4 = 0, A5 = 0, A6 = 0
43
3 Programming
3.3.2
Note
An explanation of the parameters can be found in the Table 3-20 Read data: Parameters Seite 42.
Table 3-23 RMR_RD_ BASE _DATA.SPF call parameters No. 1 Screen form parameters Data set Cycle parameters _DATASET Meaning See Seite 42 Table 3-20 Read data: Parameters
44
3 Programming
3.3.3
Figure 3-21 Read data: Tool
Note
An explanation of the parameters can be found in the Table 3-20 Read data: Parameters Seite 42.
Table 3-24 RMR_RD_TOOL_DATA.SPF call parameters No. 1 Screen form parameters Data set Cycle parameters _DATASET Meaning See Seite 42 Table 3-20 Read data: Parameters
45
3 Programming
3.3.4
Table 3-25 Reading the robot axes software limit switch parameters Parameters A1_Min A6_Min A1_Max A6_Max Type REAL REAL Description Negative software limit switch of axis A1 A6 Positive software limit switch of axis A1 A6
Table 3-26 RMR_RD_SOFT_END.SPF call parameters No. Screen form parameters Cycle parameters None Meaning
46
3 Programming
3.3.5
Table 3-27 Software limit switch parameters Parameters E1_Min E6_Min E1_Max E6_Max Type REAL REAL Description Negative software limit switch of axis E1 E6 Positive software limit switch of axis E1 E6
Table 3-28 RMR_RD_SOFT_END_EXT.SPF call parameters No. Screen form parameters Cycle parameters None Meaning
47
3 Programming
3.3.6
Table 3-29 System variable parameters Parameters Index Type INT Description Index of the system variables 1: $ADVANCE Only the $ADVANCE system variable can be read. If required by the customer-specific application, KUKA can extend the list of the system variables that can be read. Value of the system variables If the system variable is a structure type, you can read up to 10 components of the structure.
Value 1 Value 10
REAL
48
3 Programming
3.4
Write data
"Write data" contains information about the payload / base and tool data, as well as information about the software limit switch and (predefined) system data that can be written to the robot. For activation of the screen form, a data set to be read must first be entered. The "Read data from NC" softkey can then be used to display the data currently stored in the NC. Clicking the softkey "RC: Write data" writes the data entered manually in the screen form to the robot. This is possible only when all fields have been completed, otherwise the softkey remains grayed-out.
49
3 Programming
3.4.1
RMR_WR_LOAD_DATA.SPF cycle parameters: N1000 PROC RMR_WR_LOAD_DATA(INT _JobVar, INT _DATASET, REAL _M, REAL _X, REAL _Y, REAL _Z, REAL _A, REAL _B, REAL _C, REAL _JX, REAL _JY, REAL _JZ) DISPLOF SBLOF
50
3 Programming
Table 3-32 RMR_WR_LOAD_DATA.SPF call parameters No. 1 2 3 4 5 6 7 8 9 10 11 12 Screen form parameters Start condition Data set Mass X center of gravity Y center of gravity Z center of gravity A orientation B orientation C orientation X moment of inertia Y moment of inertia Z moment of inertia Cycle parameters _JobVar _DATASET _M _X _Y _Z _A _B _C _JX _JY _JZ Meaning See Seite 27 Table 3-11 Motions: General terms See Seite 50 Table 3-31 Write data: Parameters
Supplementary load data The supplementary load data must be entered in the robot controller. Reference systems of the X, Y, Z values per supplementary load:
Table 3-33 Write supplementary load data Load Supplementary load A1 Supplementary load A2 Supplementary load A3 Reference system ROBROOT coordinate system A1 = 0 ROBROOT coordinate system A2 = -90 Flange coordinate system A4 = 0, A5 = 0, A6 = 0
Procedure: 1. In the main menu, select Start-up > Measuring > Supplementary load data . 2. Enter the number of the axis to which the supplementary load is attached. Confirm with Next. 3. Enter the load data. Confirm with Next. 4. Press Save.
51
3 Programming
3.4.2
Note
An explanation of the parameters can be found in the Table 3-31 Write data: Parameters Seite 50.
RMR_WR_BASE_DATA.SPF cycle parameters: N1000 PROC RMR_WR_BASE_DATA(INT _JobVar, INT _DATASET, REAL _X, REAL _Y, REAL _Z, REAL _A, REAL _B, REAL _C) DISPLOF SBLOF
52
3 Programming
Table 3-34 RMR_WR_BASE_DATA.SPF call parameters No. 1 2 3 4 5 6 7 8 Screen form parameters Start condition Data set Offset X Offset Y Offset Z A orientation B orientation C orientation Cycle parameters _JobVar _DATASET _X _Y _Z _A _B _C Meaning See Seite 27 Table 3-11 Motions: General terms See Seite 50 Table 3-31 Write data: Parameters
53
3 Programming
3.4.3
Note
An explanation of the parameters can be found in the Table 3-31 Write data: Parameters Seite 50.
RMR_WR_TOOL_DATA.SPF cycle parameters: N1000 PROC RMR_WR_TOOL_DATA(INT _JobVar, INT _DATASET, REAL _X, REAL _Y, REAL _Z, REAL _A, REAL _B, REAL _C) DISPLOF SBLOF
54
3 Programming
Table 3-35 RMR_WR_TOOL_DATA.SPF call parameters No. 1 2 3 4 5 6 7 8 Screen form parameters Start condition Data set Offset X Offset Y Offset Z A orientation B orientation C orientation Cycle parameters _JobVar _DATASET _X _Y _Z _A _B _C Meaning See Seite 27 Table 3-11 Motions: General terms See Seite 50 Table 3-31 Write data: Parameters
55
3 Programming
3.4.4
Table 3-36 Software limit switch parameters Parameters A1_Min A6_Min A1_Max A6_Max Type REAL REAL Description Negative software limit switch of axis A1 A6 Positive software limit switch of axis A1 A6
RMR_WR_SOFT_END.SPF cycle parameters: N1000 PROC RMR_WR_SOFT_END(INT _JobVar, REAL _A1MIN, REAL _A1MAX, REAL _A2MIN, REAL _A2MAX, REAL _A3MIN, REAL _A3MAX, REAL _A4MIN, REAL _A4MAX, REAL _A5MIN, REAL _A5MAX, REAL _A6MIN, REAL _A6MAX) DISPLOF SBLOF
56
3 Programming
Screen form parameters Start condition MINUS A1 limit switch PLUS A1 limit switch MINUS A2 limit switch PLUS A2 limit switch MINUS A3 limit switch PLUS A3 limit switch MINUS A4 limit switch PLUS A4 limit switch MINUS A5 limit switch PLUS A5 limit switch MINUS A6 limit switch PLUS A6 limit switch
Cycle parameters _JobVar _A1MIN _A1MAX _A2MIN _A2MAX _A3MIN _A3MAX _A4MIN _A4MAX _A5MIN _A5MAX _A6MIN _A6MAX
Meaning See Seite 27 Table 3-11 Motions: General terms See Seite 56 Table 3-36 Software limit switch parameters
57
3 Programming
3.4.5
Table 3-38 Supplementary axes software limit switch parameters Parameters E1_Min E6_Min E1_Max E6_Max Type REAL REAL Description Negative software limit switch of axis E1 E6 Positive software limit switch of axis E1 E6
RMR_WR_SOFT_END_EXT.SPF cycle parameters: N1000 PROC RMR_WR_SOFT_END_EXT(INT _JobVar, REAL _E1MIN, REAL _E1MAX, REAL _E2MIN, REAL _E2MAX, REAL _E3MIN, REAL _E3MAX, REAL _E4MIN, REAL _E4MAX, REAL _E5MIN, REAL _E5MAX, REAL _E6MIN, REAL _E6MAX) DISPLOF SBLOF
58
3 Programming
Screen form parameters Start condition MINUS A1 limit switch PLUS A1 limit switch MINUS A2 limit switch PLUS A2 limit switch MINUS A3 limit switch PLUS A3 limit switch MINUS A4 limit switch PLUS A4 limit switch MINUS A5 limit switch PLUS A5 limit switch MINUS A6 limit switch PLUS A6 limit switch
Cycle parameters _JobVar _E1MIN _E1MAX _E2MIN _E2MAX _E3MIN _E3MAX _E4MIN _E4MAX _E5MIN _E5MAX _E6MIN _E6MAX
Meaning See Seite 27 Table 3-11 Motions: General terms See Seite 47 Table 3-27 Software limit switch parameters
59
3 Programming
3.4.6
Table 3-40 System variable parameters Parameters Index Value 1 Value 10 Advance run stop (bContinue) Type INT REAL BOOL Description See Seite 48 Table 3-29 System variable parameters TRUE = write system variable without advance run stop Note: Only possible for certain system variables.
RMR_WR_SYS_VAR cycle parameters: N1000 PROC RMR_WR_SYS_VAR(INT _JobVar, INT _INDEX, INT _CONT, REAL _V1, REAL _V2, REAL _V3, REAL _V4, REAL _V5, REAL _V6, REAL _V7, REAL _V8, REAL _V9, REAL _V10) DISPLOF SBLOF
60
3 Programming
Screen form parameters Start condition Index Advance run stop Value 1 Value 2 Value 3 Value 4 Value 5 Value 6 Value 7 Value 8 Value 9 Value 10
Cycle parameters _JobVAR _INDEX _CONT _V1 _V2 _V3 _V4 _V5 _V6 _V7 _V8 _V9 _V10
Meaning See Seite 27 Table 3-11 Motions: General terms See Seite 48 Table 3-29 System variable parameters See Seite 60 Table 3-40 System variable parameters See Seite 48 Table 3-29 System variable parameters
12 13
61
3 Programming
3.5
Safety
Table 3-42 Safety: General terms Name Start condition Description Mode in which an instruction is executed on the robot controller. 0 = direct/SUBMIT Instruction is executed directly by the Submit interpreter (Submit program). Note: This mode is not available for all function blocks. 1 = ABORTING Instruction is executed immediately by the robot interpreter (main program). All active motions and buffered instructions are aborted beforehand and the robot brought to a complete standstill.
2 = BUFFERED Instruction is buffered. Buffered instructions are processed by the robot interpreter (main program) according to the FIFO principle. Tool Coordinate system A number is assigned to each tool. Coordinate system on which the Cartesian coordinates of the parking position apply (Table 3-9 COORDSYS p. 26) Interpolation mode 0: The tool is a fixed tool (#BASE). 1: The tool is mounted on the mounting flange (#TOOL). (Table 3-9 COORDSYS p. 26)
Interpolation reference
62
3 Programming
3.5.1
Figure 3-31 Brake test
Brake test
Table 3-42 Brake test: General terms Name Parking position Description Coordinates of the Cartesian parking position (Table 3-12 E6POS p.30) The E6POS data structure contains all components of the parking position (= position of the TCP based on the origin of the selected coordinate system). The parking position is approached only in error situations. Velocity 0 100% Refers to the maximum value specified in the machine data. The maximum value depends on the robot type and the set mode. 0 % (= velocity is not changed) Acceleration 0 100% Applies to the specified parking velocity.
Parking velocity
Parking acceleration
Note
An explanation of the coordinates and STATE / TURN can be found in Table 3-12 E6POS Seite 30
63
3 Programming
The KRC_BrakeTest function block calls the program for the brake test. The brake test is started at the position where the robot is located at the program call.
CAUTION
During the brake test, an automatic switch is made to 100% override! The return travel is made to the start position after the successful brake test again with the set override!
During the brake test, all brakes are tested whether they have reached the wear limit. To do this, the robot accelerates to a defined velocity limit. Once the robot has reached the velocity, the brake acts and the result of this braking action is displayed. After a successful brake test, the robot is located again in the start position at the end of the measurement. If the brake test fails, i.e. a brake was detected as being defective, the robot travels directly to a parking position. The coordinates of the parking position are specified.
N1000 PROC RMR_BRAKE_TEST(INT _buffering, REAL _X, REAL _Y, REAL _Z, REAL _A, REAL _B, REAL _C, INT _S, INT _T, INT _velo, INT _accel, INT _tool, INT _base, INT _ipo, REAL _E1, REAL _E2, REAL _E3, REAL _E4, REAL _E5, REAL _E6) DISPLOF SBLOF
Table 3-44 RMR_BRAKE_TEST.SPF call parameters No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Screen form parameters Start condition X parking position Y parking position Z parking position A parking position B parking position C parking position STATE parking position TURN parking position Velocity Acceleration Tool Coordinate system Interpolation mode E1 parking position E2 parking position Cycle parameters _buffering _X _Y _Z _A _B _C _S _T _velo _accel _tool _base _ipo _E1 _E2 See Seite 30 Table 3-12 E6POS See Seite 62 Table 3-42 Safety: General terms Meaning See Seite 62 Table 3-42 Safety: General terms See Seite 30 Table 3-12 E6POS
64
3 Programming
No. 17 18 19 20
Screen form parameters E3 parking position E4 parking position E5 parking position E6 parking position
Meaning
65
3 Programming
3.5.2
Figure 3-32 Mastering test
Mastering test
Note
An explanation of the coordinates and STATE / TURN can be found in Table 3-12 E6POS Seite 30.
The KRC_MasRef function block calls the program for the mastering test. The mastering test is started at the position where the robot is located at the program call. The robot then travels to a Cartesian reference position.
CAUTION
The Cartesian reference position is defined in the function block with the Position input parameter and corresponds to the reference position defined with KUKA.SafeOperation
The axis values of the approached position are compared with the values stored in SafeOperation on the KRC4. If the deviation between the current position and the reference position is too large, the mastering test has failed. The robot then returns to the start position.
CAUTION
For a mastering test, all axes of a reference group must be located in the reference position in order to dampen the reference button. If not all axes of a reference group are involved to dampen the reference button, the position of the axes cannot be checked.
66
3 Programming
N1000 PROC RMR_MAS_REF(INT _buffering, REAL _X, REAL _Y, REAL _Z, REAL _A, REAL _B, REAL _C, INT _S, INT _T, INT _velo, INT _accel, INT _tool, INT _base, INT _ipo, REAL _E1, REAL _E2, REAL _E3, REAL _E4, REAL _E5, REAL _E6) DISPLOF SBLOF
Screen form parameters Start condition X parking position Y parking position Z parking position A parking position B parking position C parking position STATE parking position TURN parking position Velocity Acceleration Tool Coordinate system Interpolation mode E1 parking position E2 parking position E3 parking position E4 parking position E5 parking position E6 parking position
Cycle parameters _buffering _X _Y _Z _A _B _C _S _T _velo _accel _tool _base _ipo _E1 _E2 _E3 _E4 _E5 _E6
Meaning See Seite 62 Table 3-42 Safety: General terms See Seite 30 Table 3-12 E6POS
9 10 11 12 13 14 15 16 17 18 19 20
67
4 Start-up
4
4.1
Start-up
Prerequisites/versions
4.1.1
NCU SINUMERIK 7x0.3 PN
Hardware
4.1.2
Software
SINUMERIK CNC software 4.5 SP1 HF3 Toolbox 4.5.14.00 SINUMERIK Integrate Run MyRobot V2.0
STEP7 V5.5
68
4 Start-up
4.2
Communication
To establish the communication between KRC4 and the RobDiag diagnostic application integrated in SINUMERIK Operate, a network connection between PN and SINUMERIK Operate (NCU or PCU) must be possible. In the example application, IE and PN were placed in the same Ethernet subnet (192.168.214.0 / mask 255.255.255.0) and connected with a switch.
4.2.1
Industrial Ethernet
192.168.214.12 192.168.214.13
4.2.2
PROFINET
Table 4-2 Nodes in the PROFINET IP 192.168.214.100 192.168.214.120 192.168.214.121 KRC4 robot 1 Header module ET200S IM151-3PN HF with 4/8 F-DIs Nodes PN connection of the PLC (X150)
69
4 Start-up
4.3
NC
A single SINUMERIK can control a maximum of five robots.
Maximum configuration
4.3.1
Initial settings
Value $MN_ASSIGN_CHAN_TO_MODE_GROUP $MN_MM_NUM_GUD_MODULES $MN_MM_NUM_GUD_NAMES_CHAN $MN_MM_GUD_VALUES_MEM $MN_MM_NUM_USER_MACROS $MN_MM_NUM_MAX_FUNC_NAMES $MN_MM_NUM_MAX_FUNC_PARAM $ON_NUM_CHANNELS 1 9 +20 +200 +150 +30 +250 +1
Comment Robot channel Number of GUD modules Number of channel variables + approx. 100 KB per channel Number of macros Number of cycles Number of cycle parameters Number of channels
Position display
Table 4-4 General machine data MD 10000[] $MN_AXCONF_MACHAX_NAME_TAB Value Comment Robot axis A1 .. A6
Table 4-5 Channel machine data MD 20050[] 20060[] 20070[] 20080[] $MC_AXCONF_GEOAX_ASSIGN_TAB $MC_AXCONF_GEOAX_NAME_TAB $MN_AXCONF_MACHAX_USED $MN_AXCONF_CHANAX_NAME_TAB Value 0 X..Z Comment No geoaxes active Geoaxis names Robot axes Channel axis names
Table 4-6 Axis machine data MD 30300 30310 30320 $MA_IS_ROT_AX $MA_ROT_IS_MODULO $MA_DISPLAY_IS_MODULO Value 1 0 0 Comment Rotary axis Not a modulo axis Not a modulo display
70
4 Start-up
4.3.2
RMCC/EXPD
The WCS and MCS positions of the robot that Operate displays in the machine main screen of the "Robot channel" are not created by the path interpolator and the transformation of the SINUMERIK , but written by the PLC in the $A_DBR and $A_DBD communications buffer variables. The compile cycle "RMCC/EXPD EXternal Position Display" brings these positions into the expected display format: WCS: Three Cartesian (X-Y-Z) and three orientation coordinates (A-B-C) and possibly supplementary axes of the robot (E1 E6) MCS: Six rotary axes and possibly supplementary axes
To activate this display, an OEM transformation with 6 axes (plus maximum 6 available supplementary axes) must be configured in the "robot channel".
Table 4-7 General machine data MD 19410
Copyright Siemens AG 2013 All rights reserved
19610[3] 60996[0]
Table 4-8 Channel machine data MD 20140 24100 24110[] 24120[] 62540 $MC_TRAFO_RESET_VALUE $MC_TRAFO_TYPE_1 $MC_TRAFO_AXES_IN_1 $MC_TRAFO_GEOAX_ASSIGN_TAB_1 $MC_CC_EXPD_A_DBR_START_INDEX Value 1 4097 1..6 1..3 2048 Comment EXPD active after Reset EXPD Transformation axes Geoaxes with transformation DBR start address
$MC_CC_EXPD_A_DBR_START_INDEX must contain the same address as that entered in the OB100 on the FC700/FcRmrInit under DprStartCCEXPD.
4.3.3
The definitions (GUD9 and MMAC) used in the sample project are located under ..\nc\def.dir and can be transferred directly to the NC. The necessary machine data settings are listed in Section 4.3.1, Channel and axes.
The following settings must be made in the GUDs of the robot channel(s): RMR_DPR: Start address for the job interface (occupies 512 bytes); in the sample project 3072, deactivate in all other channels with -1.
71
4 Start-up
RMR_NUM_EX_AXES: Number of supplementary axes; evaluated in the cycles support. RMR_ROB_DB: Associated Interface-DB for saving the software limit switches in the PLC.
4.3.4
Cycles
The RMR cycles must be copied from the sample project ..\nc\cma.dir into a cycles directory of the NC.
72
4 Start-up
4.4
PLC
4.4.1 Hardware configuration
CAUTION
To implement a safe communication between the NC-PLC and the KRC4 or KRC4 compact, the NCU-OM (Object Manager) from Toolbox 04.05.14 or later must be used. This OM can be identified by the presence of three NCUs of type NCU 7x0.3 PN (V3.2+) in the SIMATIC 300 / SINUMERIK / 840D sl hardware catalog. The HW Config must be compiled and loaded with this NCU-OM. If this is not the case, no safe communication can occur!!!
Install GSDML Install the GSDML file GSDML-V2.1-KUKA-Roboter-GmbH-KRC-next-Device-V1.020101203.xml (or later) located below ..\plc\gsdml in HW Config.
Copyright Siemens AG 2013 All rights reserved
Alternatively, the GSDML file is imported automatically when the hardware of the PLC sample application ..\plc\RmrSample is opened.
KUKA-KRC4 Add 'KRC next Device V8.2' from: PROFINET IO further field devices I/O KUKAto the PN bus of the NCU and complete with '2032 digital inputs/outputs'. Then set the device name (e.g. KUKA-krc4), IP, I/O addresses and F_Dest_Add of the safe inputs/outputs.
73
4 Start-up
74
4 Start-up
75
4 Start-up
4.4.2
Reboot (OB100)
RMR initialization and configuration FC700 / FcRmrInit. Checks the block version of the Interface-DB Deletes bytes 0 to 719 in the Interface-DB Initializes KUKA mxAutomation (FC922 / KRC_S7PLC_START)
:= := := := := := :=
// // // // // // //
Interface-DB Robot number NC job interface (DPR) Interface RMCC/EXPD (DPR) Alarm number (7000xx) Message number (7000xx) Area for RMR messages/alarms
// 70xx00 to 70xx63
4.4.3
Fetch data from NC and robot FC710 / FcRmrRdData
Cyclically (OB1)
Reads job data of the NC from DPR Reads status data of RMCC/EXPD from DPR
FB953 / KRC_ReadAxisGroup Reads data and status from the robot out of the input area
:=
700
// Interface-DB
CALL "KRC_ReadAxisGroup" , "DbInstKrcReadAxisGroup1" AxisGroupIdx := 1 // Robot number InputStartByte := 1024 // Address KUKA-krc4 (NOT SAFE-Addr.) Error := ErrorID :=
Cyclical job processing FB710 / FbRmrCommon Communication with mxAutomation and supply of the Interface-DB KrcAutExternal: FB 900 KrcReadActPos: FB 901 KrcReadActAxisPos: FB 902 KrcReadActVel: FB 903
76
4 Start-up
KrcReadActAxisVel: FB 904 KrcReadActAcc: FB 905 KrcReadMxaStatus: FB 906 KrcReadSafeOpStatus: FB 907 KrcReadMxaError: FB 908 KrcMessageReset: FB 909 KrcReadKrcError: FB 910 KrcSetOverride: FB 911 KrcAbort: FB 915 KrcInterrupt: FB 916 KrcContinue: FB 917 KrcInitialize: FB 930 KrcDiag: FB 950
FB711 / FbRmrJog Control of manual traversal motion KrcMoveAxisAbsolute: FB 923 KrcJogLinearRelative: FB 926 KrcJogToolRelative: FB 927 (V2.1) KrcAbort: FB 915
FB712 / FbRmrAutBasic Control of general automatic functions KrcSetCoordSys: FB 952 RmrMove: FB 720 KrcReadLoadData: FB 940 KrcWriteLoadData: FB 941 KrcReadSoftEnd: FB 942 KrcWriteSoftEnd: FB 943 KrcReadSoftEndExt: FB 944 KrcWriteSoftEndExt: FB 945 KrcReadToolData: FB 946 KrcWriteToolData: FB 947 KrcReadBaseData: FB 948 KrcWriteBaseData: FB 949 KrcReadSysVar: FB 928 KrcWriteSysVar: FB 929 KrcBrakeTest: FB 958 KrcMasRef: FB 959
CALL
DbRmrRobot
// Interface-DB
77
4 Start-up
Write data to NC and robot FC711 / FcRmrWrData Writes the position values for RMCC/EXPD to the DPR Writes the data for NC cycles to the DPR Sets RMR and mxAutomation alarms and messages in DB2
FB954 / KRC_WriteAxisGroup Collects the job data Sends acyclically the jobs via PROFINET / WrRec to KRC Sends cyclically jobs and status via the output area to KRC
:=
700
// Interface-DB
CALL "KRC_WriteAxisGroup" , "DbInstKrcReadAxisGroup1" AxisGroupIdx := 1 // Robot number PROFINETID :=DW#16#1FF6 // 1FF6=8182 (diagnosis address KRC4) OutputStartByte := 1024 // KUKA-krc4 address (NOT SAFE address) Error := ErrorID :=
78
4 Start-up
4.5
Safety Integrated
4.5.1 Machine data
Table 4-9 General machine data MD 10385[] $MN_PROFISAFE_MASTER_ADDRESS Value 50007D0H Comment PLC-CPU 317F, PROFISafe base address Input 1 to 32 from KRC, SAFE-ID 300 Input 33 to 64 from KRC, SAFE-ID 300 Output 1 to 32 to KRC, SAFE-ID 300 Output 33 to 64 to KRC, SAFE-ID 300 INSEs assignment INSEs assignment OUTSEs assignment OUTSEs assignment User data filter IN User data filter IN User data filter OUT User data filter OUT
$MN_PROFISAFE_IN_ADDRESS $MN_PROFISAFE_IN_ADDRESS $MN_PROFISAFE_OUT_ADDRESS $MN_PROFISAFE_OUT_ADDRESS $MN_PROFISAFE_IN_ASSIGN $MN_PROFISAFE_IN_ASSIGN $MN_PROFISAFE_OUT_ASSIGN. $MN_PROFISAFE_OUT_ASSIGN. $MN_PROFISAFE_IN_FILTER $MN_PROFISAFE_IN_FILTER $MN_PROFISAFE_OUT_FILTER $MN_PROFISAFE_OUT_FILTER
500012CH 501012CH 500012CH 501012CH 33056 57064 33056 57056 FFFFFFH FF00H 33FFFFFH F000FH
4.5.2
NCK-SPL in the minimum variant
NCK (SAFE.SPF)
;VERSION: 02.00.00.00 ;DATE: 2013-03-01 ;CHANGE: 02.00.00.00 ;DATE: 2013-03-01 ;Run MyRobot: SAFE ;Changes: ; 02.00.00.00 Mar 01, 2013 - RunMyRobot/koe ; - initial N1000 N1010 N1020 N1030 define define define define INSE_NOTAUS_MCP_IO INSE_NOTAUS_HT8_IO INSE_TUERE_IO INSE_ZUSTIMMUNG as as as as $A_INSE[1] $A_INSE[2] $A_INSE[3] $A_INSE[4]
79
4 Start-up
N2030 N2040 N2050 N2060 N2070 N2080 N2090 N2100 N2110 N2120 N2130 N2140 N2150 N2160 N2170 N2180 N2190 N2200 N2210 N2220 N2230 N2240 N2250 N2260 N2270 N2280 N2290 N2300 N2310
Copyright Siemens AG 2013 All rights reserved
define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define define
INSE_KRC1_ZS INSE_KRC1_PE INSE_KRC1_AUT INSE_KRC1_T1 INSE_KRC1_T2 INSE_KRC1_NHE INSE_KRC1_BS INSE_KRC1_SHS1 INSE_KRC1_SHS2 INSE_KRC1_RES13 INSE_KRC1_RES14 INSE_KRC1_PSA INSE_KRC1_SP INSE_KRC1_SO_SO INSE_KRC1_SO_RR INSE_KRC1_SO_JF INSE_KRC1_SO_VRED INSE_KRC1_SO_SBH1 INSE_KRC1_SO_SBH2 INSE_KRC1_SO_RES23 INSE_KRC1_SO_RES24 INSE_KRC1_SO_MR1 INSE_KRC1_SO_MR2 INSE_KRC1_SO_MR3 INSE_KRC1_SO_MR4 INSE_KRC1_SO_MR5 INSE_KRC1_SO_MR6 INSE_KRC1_SO_MR7 INSE_KRC1_SO_MR8 OUTSE_KRC1_RES1 OUTSE_KRC1_NHE OUTSE_KRC1_BS OUTSE_KRC1_QBS OUTSE_KRC1_SHS1 OUTSE_KRC1_SHS2 OUTSE_KRC1_E2 OUTSE_KRC1_E7 OUTSE_KRC1_US2 OUTSE_KRC1_SBH OUTSE_KRC1_RES11 OUTSE_KRC1_RES12 OUTSE_KRC1_RES13 OUTSE_KRC1_RES14 OUTSE_KRC1_RES15 OUTSE_KRC1_SPA OUTSE_KRC1_SO_JR OUTSE_KRC1_SO_VRED OUTSE_KRC1_SO_SBH1 OUTSE_KRC1_SO_SBH2 OUTSE_KRC1_SO_SBH3 OUTSE_KRC1_SO_SBH4 OUTSE_KRC1_SO_RES25 OUTSE_KRC1_SO_RES26 OUTSE_KRC1_SO_UER1 OUTSE_KRC1_SO_UER2 OUTSE_KRC1_SO_UER3 OUTSE_KRC1_SO_UER4 OUTSE_KRC1_SO_WZ1 OUTSE_KRC1_SO_WZ2 OUTSE_KRC1_SO_WZ3 OUTSE_KRC1_SO_WZ4
as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as as
$A_INSE[36] $A_INSE[37] $A_INSE[38] $A_INSE[39] $A_INSE[40] $A_INSE[41] $A_INSE[42] $A_INSE[43] $A_INSE[44] $A_INSE[45] $A_INSE[46] $A_INSE[47] $A_INSE[48] $A_INSE[49] $A_INSE[50] $A_INSE[51] $A_INSE[52] $A_INSE[53] $A_INSE[54] $A_INSE[55] $A_INSE[56] $A_INSE[57] $A_INSE[58] $A_INSE[59] $A_INSE[60] $A_INSE[61] $A_INSE[62] $A_INSE[63] $A_INSE[64] $A_OUTSE[33] $A_OUTSE[34] $A_OUTSE[35] $A_OUTSE[36] $A_OUTSE[37] $A_OUTSE[38] $A_OUTSE[39] $A_OUTSE[40] $A_OUTSE[41] $A_OUTSE[42] $A_OUTSE[43] $A_OUTSE[44] $A_OUTSE[45] $A_OUTSE[46] $A_OUTSE[47] $A_OUTSE[48] $A_OUTSE[49] $A_OUTSE[50] $A_OUTSE[51] $A_OUTSE[52] $A_OUTSE[53] $A_OUTSE[54] $A_OUTSE[55] $A_OUTSE[56] $A_OUTSE[57] $A_OUTSE[58] $A_OUTSE[59] $A_OUTSE[60] $A_OUTSE[61] $A_OUTSE[62] $A_OUTSE[63] $A_OUTSE[64]
N2000 N2010 N2020 N2030 N2040 N2050 N2060 N2070 N2080 N2090 N2100 N2110 N2120 N2130 N2140 N2150 N2160 N2170 N2180 N2190 N2200 N2210 N2220 N2230 N2240 N2250 N2260 N2270 N2280 N2290 N2300 N2310
N2800 define PLCSIIN_EXT_MOVE_ENABLE N2800 define PLCSIIN_DELAY_DRIVES_ON N3000 ids=200 do OUTSE_KRC1_NHE INSE_NOTAUS_HT8_IO) N3010 ids=201 do OUTSE_KRC1_BS N3020 ids=202 do OUTSE_KRC1_QBS N3030 ids=203 do OUTSE_KRC1_SHS1
80
4 Start-up
PLCSIIN_DELAY_DRIVES_ON and (INSE_TUERE_IO or INSE_KRC1_T1 or NOT INSE_KRC1_T1 and INSE_ZUSTIMMUNG))) N3040 ids=204 do OUTSE_KRC1_SHS2 = true N3050 ids=205 do OUTSE_KRC1_E2 = true N3060 ids=206 do OUTSE_KRC1_E7 = true N3070 ids=207 do OUTSE_KRC1_US2 = true N3080 ids=208 do OUTSE_KRC1_SBH = true N3090 ids=209 do OUTSE_KRC1_SPA = false N3100 ids=210 do OUTSE_KRC1_RES1 = true OUTSE_KRC1_RES11=true OUTSE_KRC1_RES12=true OUTSE_KRC1_RES13=true OUTSE_KRC1_RES14=true OUTSE_KRC1_RES15=true N3110 ids=211 do OUTSE_KRC1_SO_VRED = INSE_TUERE_IO N3120 ids=212 do OUTSE_KRC1_SO_WZ1 = true N9999 M30
4.5.3
PLC-SPL in the minimum variant
PLC (FC3000)
FUNCTION "FcRmrSampleSafety" : VOID TITLE =Safety VERSION : 2.0 BEGIN NETWORK TITLE =200: A A = NHE "DbBpSpl".SPL_DATA.INSEP.NOT_AUS_MCP_IO; "DbBpSpl".SPL_DATA.INSEP.NOT_AUS_HT8_IO; "DbBpSpl".SPL_DATA.OUTSEP.KRC1_NHE;
NETWORK TITLE =201: Operator protection A "one"; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_BS; NETWORK TITLE =202: QBS A "one"; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_QBS; NETWORK TITLE =203: A( O O AN A O O ) A = A A = A L SE A = SHS1 ; "DbBpSpl".SPL_DATA.INSEP.TUEREN_IO; ; "DbBpSpl".SPL_DATA.INSEP.KRC1_T1; "DbBpSpl".SPL_DATA.INSEP.ZUSTIMMUNG; "DbBpSpl".SPL_DATA.INSEP.KRC1_T1; "DbBpSpl".SPL_DATA.INSEP.KRC1_T2; ; "DbBpSpl".PLCSIIN.EXT_MOVE_ENABLE; L 0.0; L 0.0; "DbBpSpl".PLCSIIN.DELAY_DRIVES_ON; "DbBpSpl".SPL_DATA.OUTSEP.KRC1_SHS1; L 0.0; S5T#500MS; "TDelayDrivesOn"; "TDelayDrivesOn"; "DbBpSpl".PLCSIIN.DELAY_DRIVES_ON;
81
4 Start-up
"DbBpSpl".SPL_DATA.OUTSEP.KRC1_SHS2;
NETWORK TITLE =205: I2 A "one"; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_E2; NETWORK TITLE =206: O7 A "one"; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_E7; NETWORK TITLE =207: US2 A "one"; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_US2; NETWORK TITLE =208: SBH A "one"; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_SBH; NETWORK TITLE =209: SPA A "zero"; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_SPA; NETWORK TITLE =210:RES...
Copyright Siemens AG 2013 All rights reserved
A = = = = = =
NETWORK TITLE =211: VRED A "DbBpSpl".SPL_DATA.INSEP.TUEREN_IO; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_SO_VRED; NETWORK TITLE =212: WZ 1 A "one"; = "DbBpSpl".SPL_DATA.OUTSEP.KRC1_SO_WZ1; END_FUNCTION
82
4 Start-up
4.6
Operate
4.6.1 Robot diagnosis
Configuration The OEM directory RMR_ROBDIAG is provided for the robot diagnosis of RMR. It must be copied to ..\oem\SINUMERIK \hmi\ and activated in ..\oem\SINUMERIK \hmi\cfg\systemconfiguration.ini [oem_dirs] OEM_1=RMR_ROBDIAG The port for the UDP communication is entered in the ..\oem\SINUMERIK \hmi\RMR_ROBDIAG\cfg\ XMLConverter.xml file and possibly released in the firewall.
Copyright Siemens AG 2013 All rights reserved
83
4 Start-up
Message display
Figure 4-4 Display of the messages (diagnosis / Robo.Diag / messages)
84
4 Start-up
Alarm list
Figure 4-5 Display of the alarms (diagnosis / alarm list)
Status display
Figure 4-6 Display of the robot status (diagnosis / Robo.Diag / status)
85
4 Start-up
Note
The number of displayed rows corresponds to the number of entries in the "..\oem\SINUMERIK \hmi\RMR_ROBDIAG\cfg\XMLConverter.xml" file. The PLC addresses (here DB600, starting at byte 0) are also predefined there. Display: 0=green, 1=yellow, 2=red
Texts The display texts are specified in the "\oem\SINUMERIK \hmi\RMR_ROBDIAG\lng\status_xxx.ts" file.
86
4 Start-up
4.6.2
Configuration
Cycle support
The OEM directory RMR_EDIT is provided for the cycle support of RMR. It must be copied to ..\oem\SINUMERIK \hmi\ and activated in ..\oem\SINUMERIK \hmi\cfg\systemconfiguration.ini [oem_dirs] OEM_3=RMR_EDIT
4.6.3
Configuration
Messages/alarms
The OEM directory RMR_MESSAGES is provided for the message output of RMR. It must be copied to ..\oem\SINUMERIK \hmi\ and activated in ..\oem\SINUMERIK \hmi\cfg\systemconfiguration.ini
Copyright Siemens AG 2013 All rights reserved
[oem_dirs] OEM_2=RMR_MESSAGES
Run MyRobot The alarm texts for RMR are located in ..\AlMsgRmr\source\RMRPLC_xx.COM. If changed, they must be compiled with the Alarmtextconverter and then copied to oem\SINUMERIK \hmi\RMR_MESSAGES\ cfg or lng Although the message area is freely configurable, it must be modified in the alarm text files and in the OB100/FC700 (FcRmrInit) for deviations from the sample project! FC700 AlNoArea0 MsgNoArea0 UserAreaAlMsg :=31 :=63 :=31 // Alarm area (7000xx) // Message area (7000xx) // Area for RMR messages/alarms (70xx..)
mxAutomation The messages for KUKA (mxAutomation) are output in the sample project with the alarm numbers 700031 (AlNoArea0) or 700063 (MsgNoArea0) via %1<RMRIDX>.
87
4 Start-up
4.7
Robots
4.7.1 Diagnosis support
CAUTION
CAUTION
To ensure the correct function of the KRmsgNET option, only those changes/settings mentioned in this section may be made. All other entries must not be changed!
Note
The clock times and system times must be identical on all involved systems (within a certain tolerance); observe the daylight saving setting!
The messages output on the smartHMI can be transferred via the UDP/IP protocol to as many as five external systems, e.g. to a cell visualization. The message text and the associated message elements are sent in the language set on the smartHMI.
88
4 Start-up
The "KRmsgNET" menu call located below the Start-up/Service is used to configure the individual channels. The channel can be assigned a name, a target address and a port.
Note
The specified Port ID must match the specified port in the ..\hmi\oem\SINUMERIK \hmi\RMR_ROBDIAG\cfg\XMLConverter.xml file. The address of the Operate System (NCU or PCU) must always be specified as IP address.
Up to five channels can be configured. The touch screen on the SmartPad is used for the navigation. The "Save" softkey is used to initiate the saving of the configuration. An accessibility test is also made. The result is displayed in the configuration window.
The accessibility test can have two results: The recipient is accessible and can receive data (e.g. ping successful 15 ms).
89
4 Start-up
The recipient is not accessible and cannot receive data (e.g. ping failed 477 ms).
It is also possible to give the channels a configuration. The message type to be sent is compared with the filter and the sending of a specific message type suppressed. This makes it possible to transfer only relevant information to the external system. The "Save" softkey also saves the filter setting.
Note
During running operation, a heartbeat signal is sent in an interval of 5 minutes over all configured channels. This is filtered out in the RobDiag Operate application.
Messages
Copyright Siemens AG 2013 All rights reserved
Table 4-10 The following message types can be transferred: Name Info State Ack Wait Dialog Event Description Notice message Status message Acknowledge message Wait message Dialog message System message
Table 4-11 The output messages comprise the following elements: Element Network name of the robot Name of the robot Time of the message (date, time) Originator of the message Message text Message number Message type Message status Example PCRC7190.ROBOTER.KUKA.DE ROB1 --KCP Value cannot be changed by the selected program 1172 Info Add: Message displayed Removed: Message removed
90
4 Start-up
4.7.2
Adaptation of the SAFE-ID
PROFIsafe
The SAFE-ID in the PROFINET device of the KRC4 must match the F_DEST_ADDR of the safe inputs/outputs in the hardware configuration.
Figure 4-12 Safety configuration
4.7.3
Delay time
After receiving a job, mxAutomation waits a set time for a second block to allow the path to be approximately positioned. This time is stored as "mxa_apo_waittime" variable in the /R1/mxA_CommandDispatcher.SRC module and is initialized with the value 0.35 seconds.
4.7.4
To extend the automatic external message acknowledgement on the KRC, the c:\KRC\ROBOTER\Config\User\Common\ KrcExtConfMsg.xml file must be modified:
<?xml version="1.0" encoding="UTF-8"?> <KrcExtConfMsg xsi:noNamespaceSchemaLocation= "/Roboter/Config/System/Common/Schemes/KrcExtConfMsg.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Version Label=""> <Info Version="KRC V8.2"/> <Schema Version="1"/> </Version> <!-- ============================================================= -->
91
4 Start-up
<!-<!-<!-<!-<!-<!-<!-<!-<!-<!-<!-<!--
This file allows to change the configured default --> behavior for external confirmation for specified --> messages --> ============================================================= --> Example: --> <Message Number="xyz" AllowConfInExt="true" /> --> ==> allow confirmation in EXT --> <Message Number="xyz" AllowConfInExt="false" /> --> ==> disable confirmation in EXT --> ============================================================= --> !!! only confirmation messages are allowed to configure !!! --> ============================================================= -->
92
5 Lists
5
5.1
Lists
Interface-DB (DB700)
5.1.1 Signals to the RMR
DB700
Byte 0 1 2 3 4 5
Copyright Siemens AG 2013 All rights reserved AutExt Reset
Bit 6
Message Reset
Bit 5
Bit 4
Bit 3
Restart
Bit 2
Bit 1
Bit 0
Run with OfficePc
KrcBrakeF (V2.1) AutExt ExtStart AutExt DrivesOn AutExt EnableExt Feed Override (INT) AutExt !DrivesOff AutExt EnableAut
6 7 8 9 10 11 12 13-31
JOG E2 JOG PLUS JOG WCS JOG E1 JOG MINUS JOG TOOL (2.1) INC 10000 JOG A6/C JOG A5/B JOG A4/A JOG E6 INC 1000 JOG A3/Z JOG E5 INC 100
Table 5-2 Description of signals to the RMR Signal name RunOfficePC Restart MessageReset Reset KrcBrake Type BOOL BOOL BOOL BOOL BOOL Signal name (KRL) Description Simulation operation with Office PC Restart of the PLC TRUE = acknowledge messages TRUE = abort motions, acknowlege messages, Stops the robot with BRAKE and prevents all motions while the signal is 1. Continue the motion for rising edge and reset KrcBrake / F Stops the robot with BRAKE F and prevents all motions while the signal is 1. (V2.1) $MOVE_ENABLE Automatic external:
KrcCont KrcBrakeF
BOOL BOOL
AutExtMoveEnable
BOOL
93
5 Lists
Signal name
Type
Description TRUE = travel release for the robot Note: This system variable is monitored by the robot controller in all operating modes.
Automatic external: TRUE = acknowledge fault messages Automatic external: TRUE = switch-off the robot drives Automatic external: TRUE = switch-on the robot drives Automatic external: TRUE = start or continue the robot program Automatic external: Selects the mxAutomation robot program for a rising edge of the signal and starts it. All buffer instructions are aborted beforehand. Automatic external: TRUE = release operating mode T1 The $MOVE_ENABLE signal is suppressed for missing release. The robot can no longer be moved. Automatic external: TRUE = release operating mode T2 The $MOVE_ENABLE signal is suppressed for missing release. The robot can no longer be moved. Automatic external: TRUE = release Automatic operating mode The $MOVE_ENABLE signal is suppressed for missing release. The robot can no longer be moved. Automatic external: TRUE = release AutomaticExternal operating mode The $MOVE_ENABLE signal is suppressed for missing release. The robot can no longer be moved. Feedrate override 0..100% (int)
AutExt Reset
BOOL
AutExtEnableT1
Copyright Siemens AG 2013 All rights reserved
BOOL
AutExtEnableT2
BOOL
AutExtEnableAut
BOOL
AutExtEnableExt
BOOL
Feed Override ReadAxisVelo ReadCartAccel Enable JogPosEditor Start JogPosEditor JOG A1/X JOG A2/Y JOG A3/Z JOG A4/A JOG A5/B JOG A6/C
INT BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL $VEL_AXIS_ACT $ACC_CAR_ACT
Read axis velocities (V2.1) Read Cartesian accelerations (V2.1) Release 'Jog' softkey, etc. Perform motion Jog A1/X Jog A2/Y Jog A3/Z Jog A4/A Jog A5/B Jog A6/C
94
5 Lists
Signal name JOG E1 JOG E2 JOG E3 JOG E4 JOG E5 JOG E6 JOG MINUS JOG PLUS INC 1 INC 10 INC 100 INC 1000 INC 10000 JOG WCS JOG TOOL (V2.1) SafeOperations MasRefReq Ext
Copyright Siemens AG 2013 All rights reserved
Type BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL
Signal name (KRL) Jog E1 Jog E2 Jog E3 Jog E4 Jog E5 Jog E6 Jog Minus Jog Plus
Description
Jog 0.001 mm or degrees Jog 0.01 mm or degrees Jog 0.1 mm or degrees Jog 1 mm or degrees Jog 10 mm or degrees Jog WCS Jog TOOL (as of V2.1) Safe Operations Safe Operations:TRUE = mastering test requested by the PLC Safe Operations Safe Operations:TRUE = brake test requested by the PLC
SafeOperationsBrakeTestReqExt
BOOL
5.1.2
DB700
Byte 32 33 34 35 36 37-43 44 45-47 48 49-51 52
ErrorMoveJog Tool (V2.1) SafeOperations MasTest SwitchOk SafeOperations BrakeTest Warn AutExt IntEStop AutExt StopMess AutExt IoActConf AutExt RobStopped
KrcBrakeActive (V2.1) AutExt RobCal AutExt NearPosRet AutExt PeriRdy AutExt OnPath KrcMode Ext AutExt UserSafe AutExt ProMove KrcMode Aut AutExt AlarmStop AutExt ApplRun KrcMode T2 AutExt RcRdy AutExt ProAct KrcMode T1
SafeOperations BrakesOk
ErrorMoveJog Wcs
ErrorMoveJog Mcs
ErrorMoveJog Abort
ErrNoKrc
53 54
MsgNoKrc
95
5 Lists
DB700
Byte 55 56-63 Bit 7 Bit 6 Bit 5
Table 5-4 Description of the signals from the RMR Signal name KrcBrakeActive AutExtRcRdy Type BOOL BOOL $RC_RDY1 Signal name (KRL) Description BRAKE / BRAKE F active (V2.1) Automatic external: TRUE = robot controller ready for program start Automatic external: FALSE = robot stop by EMERGENCYSTOP Automatic external: FALSE = operator protection violated Automatic external: TRUE = robot drives switched on Automatic external: TRUE = robot axes adjusted Automatic external: TRUE = automatic external interface active Automatic external: TRUE = safety circuit interrupted (robot error) Automatic external: TRUE = external EMERGENCY-OFF FALSE = EMERGENCY-OFF button pressed on the smartPAD Automatic external: TRUE = process on the robot level active Automatic external: TRUE = robot program running Automatic external: TRUE = synchronous robot motion active Automatic external: TRUE = robot on programmed path Automatic external: TRUE = robot near the most-recently stored position on the programmed path (after leaving the path) Automatic external: TRUE = robot stationary Automatic external: TRUE = T1 operating mode selected Automatic external: TRUE = T2 operating mode selected
AutExtAlarmStop
BOOL
$ALARM_STOP
AutExtUserSafe AutExtPeriRdy
Copyright Siemens AG 2013 All rights reserved
AutExtRobCal AutExtIoActConf
AutExtStopMess
BOOL
$STOPMESS
AutExtIntEStop
BOOL
AutExtProAct
BOOL
$PRO_ACT
AutExtApplRun AutExtProMove
BOOL BOOL
APPL_RUN $PRO_MOVE
AutExtOnPath AutExtNearPosRet
BOOL BOOL
$ON_PATH $NEAR_POSRET
96
5 Lists
Type BOOL
Description Automatic external: TRUE = Automatic operating mode selected Automatic external: TRUE = Automatic External operating mode selected Safe Operations Safe Operations:TRUE = mastering test requested by the PLC Safe Operations Safe Operations:TRUE = brake test requested by the PLC Safe Operations Safe Operations:TRUE = robot has been stopped because the monitoring time for the brake test has expired Safe Operations TRUE = brake test currently being performed Safe Operations Edge TRUE --> FALSE: A brake has been detected as being defective Safe Operations Edge FALSE --> TRUE: It has been determined for at least one brake that the wear limit is reached. TRUE = mastering test switch operational Error during motion cancellation Error during axis traversal Error during the Cartesian travel Error during the Tool travel (V2.1) Error number from KRC Message number from KRC
KrcModeExt
BOOL
$EXT
BOOL
BOOL
BOOL
BOOL
BOOL
BOOL
SafeOperations MasTestSwitchOk ErrorMoveJog Abort ErrorMoveJog Mcs ErrorMoveJog Wcs ErrorMoveJogTool ErrNoKrc MsgNoKrc
97
5 Lists
5.1.3
RMR configuration
DB700
WORD 64 66 68 70-86 88 90 92 94
RMR configuration
Integer
ActRobot DprStartJob DprStartCCEXPD
5.1.4
DB700
DWORD 720 724 728 732 736 740 744 748 752 756 760 764 768 772 776 780 784 788 792 796 800-812
Velocities / accelerations
REAL
TCP actual velocity A1 actual velocity A2 actual velocity A3 actual velocity A4 actual velocity A5 actual velocity A6 actual velocity E1 actual velocity E2 actual velocity E3 actual velocity E4 actual velocity E5 actual velocity E6 actual velocity TCP actual acceleration X actual acceleration Y actual acceleration Z actual acceleration A actual acceleration B actual acceleration C actual acceleration
98
5 Lists
DB700
WORD 848 850 852 854 856-860
DB700
DWORD 880 884
Copyright Siemens AG 2013 All rights reserved
888 892 896 900 904 908 912 916 920 924 928 932 936 940 944 948 952 956 960 964 968 972
99
5 Lists
5.2
DualPortRam
5.2.1 Cyclically: Positions
$A_ DBR n+ 256 DBR n+ 260 DBR n+ 264 DBR n+ 268 DBR n+ 272 DBR n+ 276 DBD n+ 280 DBD n+ 284 DBR n+ 288 DBR n+ 292 DBR n+ 296 DBR n+ 300 DBR n+ 304 DBR n+ 308 DBR n+ 312 DBR n+ 316 DBR n+ 320 DBR n+ 324 DBR n+ 328 DBR n+ 332 DBR n+ 336 DBR n+ 340 DBR n+ 344 DBR n+ 348 DBR n+ 352 DBR n+ 356 DBR n+ 360 DBR n+ 364 DBR n+ 368 DBR n+ 372 DBR n+ 376 DBR n+ 380
DB700 352 356 360 364 368 372 376 380 384 388 392 396 400 404 408 412 416 420 424 428 432 436 440 444 448 452 456 460 464 468 472 476
RmrDprC_POS_A5 RmrDprC_POS_A6 RmrDprC_POS_E1 RmrDprC_POS_E2 RmrDprC_POS_E3 RmrDprC_POS_E4 RmrDprC_POS_E5 RmrDprC_POS_E6 RmrDprC_21 RmrDprC_22 RmrDprC_23 RmrDprC_24 RmrDprC_25 RmrDprC_26 RmrDprC_27 RmrDprC_28 RmrDprC_29 RmrDprC_30 RmrDprC_31 RmrDprC_32
100
5 Lists
5.2.2
RMR_SET_CIRCTYPE
MMAC RmrDprO_JobVarExt
$A_ DBD n+ 0
DB700 96
13xx000
13xx000
13xx000
1900000
1901000
1100000
1101000
1102000
RmrDprO_JobVar
Copyright Siemens AG 2013 All rights reserved
DBD n+
100
RmrDprO_D1 RmrDprO_D2 RmrDprO_D3 RmrDprO_D4 RmrDprO_D5 RmrDprO_D6 RmrDprO_D7 RmrDprO_D8 RmrDprO_D9 RmrDprO_D10 RmrDprO_D11 RmrDprO_D12 RmrDprO_D13 RmrDprO_D14 RmrDprO_D15 RmrDprO_D16 RmrDprO_D17 RmrDprO_D18 RmrDprO_D19 RmrDprO_PosValid
DBD n+
OriT
DBD n+ 12 DBD n+ 16 DBD n+ 20 DBD n+ 24 DBD n+ 28 DBD n+ 32 DBD n+ 36 DBD n+ 40 DBD n+ 44 DBD n+ 48 DBD n+ 52 DBD n+ 56 DBD n+ 60 DBD n+ 64 DBD n+ 68 DBD n+ 72 DBD n+ 76 DBD n+ 80 DBD n+ 84
116 Accel Accel Accel Accel Accel 120 124 128 132 136 140 144 148 152 156 160 164 168 172 176 180 Valid Valid Valid AP ST Tool AP TU Base IpoM Tool Base IpoM
EP X EP Y EP Z EP A EP B EP C
EP X EP Y EP Z EP A EP B EP C
EP X EP Y EP Z EP A EP B EP C
CDIS CORI
101
1200000
RMR_SET_COORDSYS
RMR_MOVE_CIRC RMR_MOVE_CIRC_P
RMR_SET_ORITYPE
RMR_BRAKE_TEST
RMR_MOVE_AXIS
RMR_MAS_REF
RMR_SET_APO
RMR_MOVE RMR_MOVE_P
5 Lists
RMR_SET_CIRCTYPE
MMAC RmrDprO_R7 RmrDprO_R8 RmrDprO_R9 RmrDprO_R10 RmrDprO_R11 RmrDprO_R12 RmrDprO_R13 RmrDprO_R14 RmrDprO_R15 RmrDprO_R16
Copyright Siemens AG 2013 All rights reserved
$A_ DBR n+ 112 DBR n+ 116 DBR n+ 120 DBR n+ 124 DBR n+ 128 DBR n+ 132 DBR n+ 136 DBR n+ 140 DBR n+ 144 DBR n+ 148 DBR n+ 152 DBR n+ 156 DBR n+ 160 DBR n+ 164 DBR n+ 168 DBR n+ 172 DBR n+ 176 DBR n+ 180 DBR n+ 184 DBR n+ 188 DBR n+ 192 DBR n+ 196 DBR n+ 200 DBR n+ 204 DBR n+ 208 DBR n+ 212 DBR n+ 216 DBR n+ 220 DBR n+ 224 DBR n+ 228 DBR n+ 232 DBR n+ 236 DBR n+ 240 DBR n+ 244 DBR n+ 248 DBR n+ 252
DB700 208 212 216 220 224 228 232 236 240 244 248 252 256 260 264 268 272 276 280 284 288 292 296 300 304 308 312 316 320 324 328 332 336 340 344 348 EP E1 EP E1 EP E1 EP E1 EP E2 EP E2 EP E2 EP E2 EP E3 EP E3 EP E3 EP E3 EP E4 EP E4 EP E4 EP E4 EP E5 EP E5 EP E5 EP E5 EP E6 EP E6 EP E6 EP E6 AP X AP Y AP Z AP A AP B AP C AP E1 AP E2 AP E3 AP E4 AP E5 AP E6 Angle
RmrDprO_R17 RmrDprO_R18 RmrDprO_R19 RmrDprO_R20 RmrDprO_R21 RmrDprO_R22 RmrDprO_R23 RmrDprO_R24 RmrDprO_R25 RmrDprO_R26 RmrDprO_R27 RmrDprO_R28 RmrDprO_R29 RmrDprO_R30 RmrDprO_R31 RmrDprO_R32 RmrDprO_R33 RmrDprO_R34 RmrDprO_R35 RmrDprO_R36 RmrDprO_R37 RmrDprO_R38 RmrDprO_R39 RmrDprO_R40 RmrDprO_R41 RmrDprO_R42
RmrDprR_Result
DBB n+ 384
480
102
RMR_SET_COORDSYS
RMR_MOVE_CIRC RMR_MOVE_CIRC_P
RMR_SET_ORITYPE
RMR_BRAKE_TEST
RMR_MOVE_AXIS
RMR_MAS_REF
RMR_SET_APO
RMR_MOVE RMR_MOVE_P
5 Lists
RMR_SET_CIRCTYPE
MMAC RmrDprR_Result_2
DBD n+ 392 DBD n+ 396 DBD n+ 400 DBD n+ 404 DBD n+ 408 DBD n+ 412 DBD n+ 416 DBD n+ 420 DBD n+ 424 DBD n+ 428
488 492 496 500 504 508 512 516 520 524
RmrDprR_R1 RmrDprR_R2 RmrDprR_R3 RmrDprR_R4 RmrDprR_R5 RmrDprR_R6 RmrDprR_R7 RmrDprR_R8 RmrDprR_R9 RmrDprR_R10 RmrDprR_R11 RmrDprR_R12 RmrDprR_R13 RmrDprR_R14 RmrDprR_R15 RmrDprR_R16 RmrDprR_R17 RmrDprR_R18 RmrDprR_R19 RmrDprR_R20
DBR n+ 432 DBR n+ 436 DBR n+ 440 DBR n+ 444 DBR n+ 448 DBR n+ 452 DBR n+ 456 DBR n+ 460 DBR n+ 464 DBR n+ 468 DBR n+ 472 DBR n+ 476 DBR n+ 480 DBR n+ 484 DBR n+ 488 DBR n+ 492 DBR n+ 496 DBR n+ 500 DBR n+ 504 DBR n+ 508
528 532 536 540 544 548 552 556 560 564 568 572 576 580 584 588 592 596 600 604
103
RMR_SET_COORDSYS
RMR_MOVE_CIRC RMR_MOVE_CIRC_P
RMR_SET_ORITYPE
RMR_BRAKE_TEST
RMR_MOVE_AXIS
RMR_MAS_REF
RMR_SET_APO
RMR_MOVE RMR_MOVE_P
5 Lists
5.2.3
RMR_RD_TOOL_DATA
RMR_RD_LOAD_DATA
RMR_WR_LOAD_DATA
RMR_WR_TOOL_DATA
RMR_RD_BASE_DATA
RMR_WR_BASE_DATA
RMR_RD_SOFT_END
RMR_WR_SOFT_END
RMR_RD_SYS_VAR 1410000
MMAC RmrDprO_JobVarExt
$A_ DBD n+ 0
DB700 96
1400000
1401000
1402000
1403000
1404000
1405000
1406000
1407000
1408000
1409000
RmrDprO_JobVar
Copyright Siemens AG 2013 All rights reserved
DBD n+
4 100
RmrDprO_D1 RmrDprO_D2 RmrDprO_D3 RmrDprO_D4 RmrDprO_D5 RmrDprO_D6 RmrDprO_D7 RmrDprO_D8 RmrDprO_D9 RmrDprO_D10 RmrDprO_D11 RmrDprO_D12 RmrDprO_D13 RmrDprO_D14 RmrDprO_D15 RmrDprO_D16 RmrDprO_D17 RmrDprO_D18 RmrDprO_D19 RmrDprO_D20
DBD n+
104 Tool Tool 108 112 116 120 124 128 132 136 140 144 148 152 156 160 164 168 172 176 180
DBD n+ 12 DBD n+ 16 DBD n+ 20 DBD n+ 24 DBD n+ 28 DBD n+ 32 DBD n+ 36 DBD n+ 40 DBD n+ 44 DBD n+ 48 DBD n+ 52 DBD n+ 56 DBD n+ 60 DBD n+ 64 DBD n+ 68 DBD n+ 72 DBD n+ 76 DBD n+ 80 DBD n+ 84
DBR n+ 88 DBR n+ 92 DBR n+ 96 DBR n+ 100 DBR n+ 104 DBR n+ 108 DBR n+ 112
104
1411000
RMR_WR_SYS_VAR
5 Lists
RMR_RD_SOFT_END_EXT
RMR_WR_SOFT_END_EXT
RMR_RD_TOOL_DATA
RMR_RD_LOAD_DATA
RMR_WR_LOAD_DATA
RMR_WR_TOOL_DATA
RMR_RD_BASE_DATA
RMR_WR_BASE_DATA
RMR_RD_SOFT_END
RMR_WR_SOFT_END
RMR_RD_SYS_VAR
MMAC RmrDprO_R8 RmrDprO_R9 RmrDprO_R10 RmrDprO_R11 RmrDprO_R12 RmrDprO_R13 RmrDprO_R14 RmrDprO_R15 RmrDprO_R16 RmrDprO_R17
Copyright Siemens AG 2013 All rights reserved
$A_ DBR n+ 116 DBR n+ 120 DBR n+ 124 DBR n+ 128 DBR n+ 132 DBR n+ 136 DBR n+ 140 DBR n+ 144 DBR n+ 148 DBR n+ 152 DBR n+ 156 DBR n+ 160 DBR n+ 164 DBR n+ 168 DBR n+ 172 DBR n+ 176 DBR n+ 180 DBR n+ 184 DBR n+ 188 DBR n+ 192 DBR n+ 196 DBR n+ 200 DBR n+ 204 DBR n+ 208 DBR n+ 212 DBR n+ 216 DBR n+ 220 DBR n+ 224 DBR n+ 228 DBR n+ 232 DBR n+ 236 DBR n+ 240 DBR n+ 244 DBR n+ 248 DBR n+ 252
DB700 212 216 220 224 228 232 236 240 244 248 252 256 260 264 268 272 276 280 284 288 292 296 300 304 308 312 316 320 324 328 332 336 340 344 348 L_JY L_JZ L_M A4+ A5A5+ A6A6+ E4+ E5E5+ E6E6+ V_8 V_9 V_10
RmrDprO_R18 RmrDprO_R19 RmrDprO_R20 RmrDprO_R21 RmrDprO_R22 RmrDprO_R23 RmrDprO_R24 RmrDprO_R25 RmrDprO_R26 RmrDprO_R27 RmrDprO_R28 RmrDprO_R29 RmrDprO_R30 RmrDprO_R31 RmrDprO_R32 RmrDprO_R33 RmrDprO_R34 RmrDprO_R35 RmrDprO_R36 RmrDprO_R37 RmrDprO_R38 RmrDprO_R39 RmrDprO_R40 RmrDprO_R41 RmrDprO_R42
RmrDprR_Result RmrDprR_Result_2
480 481
105
RMR_WR_SYS_VAR
5 Lists
RMR_RD_SOFT_END_EXT
RMR_WR_SOFT_END_EXT
RMR_RD_TOOL_DATA
RMR_RD_LOAD_DATA
RMR_WR_LOAD_DATA
RMR_WR_TOOL_DATA
RMR_RD_BASE_DATA
RMR_WR_BASE_DATA
RMR_RD_SOFT_END
RMR_WR_SOFT_END
RMR_RD_SYS_VAR V_1 V_2 V_3 V_4 V_5 V_6 V_7 V_8 V_9 V_10
MMAC
$A_
DBD n+ 392 DBD n+ 396 DBD n+ 400 DBD n+ 404 DBD n+ 408 DBD n+ 412 DBD n+ 416 DBD n+ 420 DBD n+ 424 DBD n+ 428
488 492 496 500 504 508 512 516 520 524
RmrDprR_R1 RmrDprR_R2 RmrDprR_R3 RmrDprR_R4 RmrDprR_R5 RmrDprR_R6 RmrDprR_R7 RmrDprR_R8 RmrDprR_R9 RmrDprR_R10 RmrDprR_R11 RmrDprR_R12 RmrDprR_R13 RmrDprR_R14 RmrDprR_R15 RmrDprR_R16 RmrDprR_R17 RmrDprR_R18 RmrDprR_R19 RmrDprR_R20
DBR n+ 432 DBR n+ 436 DBR n+ 440 DBR n+ 444 DBR n+ 448 DBR n+ 452 DBR n+ 456 DBR n+ 460 DBR n+ 464 DBR n+ 468 DBR n+ 472 DBR n+ 476 DBR n+ 480 DBR n+ 484 DBR n+ 488 DBR n+ 492 DBR n+ 496 DBR n+ 500 DBR n+ 504 DBR n+ 508
528 L_X 532 L_Y 536 L_Z 540 L_A 544 L_B 548 L_C 552 L_JX 556 L_JY 560 L_JZ 564 L_M 568 572 576 580 584 588 592 596 600 604
106
RMR_WR_SYS_VAR
5 Lists
5.3
+ | | 1 1 0 0 0 1 1 0 1 0 1 1 0 2 0
+ | 0 0 0
KrcSetCoordSys KrcMoveLinearAbsolute KrcMoveLinearRelative KrcMoveDirectAbsolute KrcMoveDirectRelative KrcMoveAxisAbsolute KrcMoveCircAbsolute KrcMoveCircRelative KrcMoveJogLinRelative KrcMoveJogToolRelative KrcReadLoadData KrcWriteLoaddata KrcReadSoftEnd KrcWriteSoftEnd KrcReadSoftEndExt KrcWriteSoftEndExt KrcReadToolData KrcWriteToolData KrcReadBaseData KrcWriteBaseData KrcReadSysVar KrcWriteSysVar KrcBrakeTest KrcMasRef KrcAbort
FB 926 FB 927 FB FB FB FB FB FB FB FB FB FB FB FB 940 941 942 943 944 945 946 947 948 949 928 929
107
5 Lists
5.4
;most recently read system variables N1080 def chan int RMR_SYS_VAR_IDX N1090 def chan real RMR_SYS_VAR[10]
Copyright Siemens AG 2013 All rights reserved
;History N8000 def chan int N8010 def chan real N8020 def chan string[16] ;Channel configuration N9000 def chan int N9010 def chan int N9020 def chan int N9999 M30
5.5
Macros
;VERSION: 02.00.00.00 ;DATE: 2013-03-01 ;CHANGE: 02.00.00.00 ;DATE: 2013-03-01 ;Run MyRobot: Macros ;Changes: ; 02.00.00.00 Mar 01, 2013 - RunMyRobot/koe ; - initial ;Outputs: Jobdatas N1000 DEFINE RmrDprO_JobVarExt N1010 DEFINE RmrDprO_JobVar N1020 N1030 N1040 N1050 N1060 N1070 N1080 N1090 N1100 N1110 N1120 N1130 N1140 DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE RmrDprO_D1 RmrDprO_D2 RmrDprO_D3 RmrDprO_D4 RmrDprO_D5 RmrDprO_D6 RmrDprO_D7 RmrDprO_D8 RmrDprO_D9 RmrDprO_D10 RmrDprO_D11 RmrDprO_D12 RmrDprO_D13
AS $A_DBD[RMR_DPR+0] AS $A_DBD[RMR_DPR+4] AS AS AS AS AS AS AS AS AS AS AS AS AS $A_DBD[RMR_DPR+8] $A_DBD[RMR_DPR+12] $A_DBD[RMR_DPR+16] $A_DBD[RMR_DPR+20] $A_DBD[RMR_DPR+24] $A_DBD[RMR_DPR+28] $A_DBD[RMR_DPR+32] $A_DBD[RMR_DPR+36] $A_DBD[RMR_DPR+40] $A_DBD[RMR_DPR+44] $A_DBD[RMR_DPR+48] $A_DBD[RMR_DPR+52] $A_DBD[RMR_DPR+56]
108
5 Lists
N1150 N1160 N1170 N1180 N1190 N1200 N1210 N1320 N1330 N1340 N1350 N1360 N1370 N1380 N1390 N1400 N1410 N1420 N1430 N1440 N1450 N1460 N1470 N1480 N1490 N1500 N1510 N1520 N1530 N1540 N1550 N1560 N1570 N1580 N1590 N1600 N1610 N1620 N1630 N1640 N1650 N1660 N1670 N1680 N1690 N1700 N1710 N1720 N1730
DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE
RmrDprO_D14 RmrDprO_D15 RmrDprO_D16 RmrDprO_D17 RmrDprO_D18 RmrDprO_D19 RmrDprO_PosValid RmrDprO_R1 RmrDprO_R2 RmrDprO_R3 RmrDprO_R4 RmrDprO_R5 RmrDprO_R6 RmrDprO_R7 RmrDprO_R8 RmrDprO_R9 RmrDprO_R10 RmrDprO_R11 RmrDprO_R12 RmrDprO_R13 RmrDprO_R14 RmrDprO_R15 RmrDprO_R16 RmrDprO_R17 RmrDprO_R18 RmrDprO_R19 RmrDprO_R20 RmrDprO_R21 RmrDprO_R22 RmrDprO_R23 RmrDprO_R24 RmrDprO_R25 RmrDprO_R26 RmrDprO_R27 RmrDprO_R28 RmrDprO_R29 RmrDprO_R30 RmrDprO_R31 RmrDprO_R32 RmrDprO_R33 RmrDprO_R34 RmrDprO_R35 RmrDprO_R36 RmrDprO_R37 RmrDprO_R38 RmrDprO_R39 RmrDprO_R40 RmrDprO_R41 RmrDprO_R42
AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS
$A_DBD[RMR_DPR+60] $A_DBD[RMR_DPR+64] $A_DBD[RMR_DPR+68] $A_DBD[RMR_DPR+72] $A_DBD[RMR_DPR+76] $A_DBD[RMR_DPR+80] $A_DBD[RMR_DPR+84] $A_DBR[RMR_DPR+88] $A_DBR[RMR_DPR+92] $A_DBR[RMR_DPR+96] $A_DBR[RMR_DPR+100] $A_DBR[RMR_DPR+104] $A_DBR[RMR_DPR+108] $A_DBR[RMR_DPR+112] $A_DBR[RMR_DPR+116] $A_DBR[RMR_DPR+120] $A_DBR[RMR_DPR+124] $A_DBR[RMR_DPR+128] $A_DBR[RMR_DPR+132] $A_DBR[RMR_DPR+136] $A_DBR[RMR_DPR+140] $A_DBR[RMR_DPR+144] $A_DBR[RMR_DPR+148] $A_DBR[RMR_DPR+152] $A_DBR[RMR_DPR+156] $A_DBR[RMR_DPR+160] $A_DBR[RMR_DPR+164] $A_DBR[RMR_DPR+168] $A_DBR[RMR_DPR+172] $A_DBR[RMR_DPR+176] $A_DBR[RMR_DPR+180] $A_DBR[RMR_DPR+184] $A_DBR[RMR_DPR+188] $A_DBR[RMR_DPR+192] $A_DBR[RMR_DPR+196] $A_DBR[RMR_DPR+200] $A_DBR[RMR_DPR+204] $A_DBR[RMR_DPR+208] $A_DBR[RMR_DPR+212] $A_DBR[RMR_DPR+216] $A_DBR[RMR_DPR+220] $A_DBR[RMR_DPR+224] $A_DBR[RMR_DPR+228] $A_DBR[RMR_DPR+232] $A_DBR[RMR_DPR+236] $A_DBR[RMR_DPR+240] $A_DBR[RMR_DPR+244] $A_DBR[RMR_DPR+248] $A_DBR[RMR_DPR+252]
;Inputs: Cyclic N2000 DEFINE RmrDprC_POS_X N2010 DEFINE RmrDprC_POS_Y N2020 DEFINE RmrDprC_POS_Z N2030 DEFINE RmrDprC_POS_A N2040 DEFINE RmrDprC_POS_B N2050 DEFINE RmrDprC_POS_C N2060 DEFINE RmrDprC_POS_S N2070 DEFINE RmrDprC_POS_T N2080 DEFINE RmrDprC_AXIS_A1 N2090 DEFINE RmrDprC_AXIS_A2 N2100 DEFINE RmrDprC_AXIS_A3 N2110 DEFINE RmrDprC_AXIS_A4 N2120 DEFINE RmrDprC_AXIS_A5 N2130 DEFINE RmrDprC_AXIS_A6 N2140 DEFINE RmrDprC_AXIS_E1 N2150 DEFINE RmrDprC_AXIS_E2 N2160 DEFINE RmrDprC_AXIS_E3 N2170 DEFINE RmrDprC_AXIS_E4 N2180 DEFINE RmrDprC_AXIS_E5 N2190 DEFINE RmrDprC_AXIS_E6
AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS
$A_DBR[RMR_DPR+256] $A_DBR[RMR_DPR+260] $A_DBR[RMR_DPR+264] $A_DBR[RMR_DPR+268] $A_DBR[RMR_DPR+272] $A_DBR[RMR_DPR+276] $A_DBD[RMR_DPR+280] $A_DBD[RMR_DPR+284] $A_DBR[RMR_DPR+288] $A_DBR[RMR_DPR+292] $A_DBR[RMR_DPR+296] $A_DBR[RMR_DPR+300] $A_DBR[RMR_DPR+304] $A_DBR[RMR_DPR+308] $A_DBR[RMR_DPR+312] $A_DBR[RMR_DPR+316] $A_DBR[RMR_DPR+320] $A_DBR[RMR_DPR+324] $A_DBR[RMR_DPR+328] $A_DBR[RMR_DPR+332]
109
5 Lists
N2190 N2190 N2190 N2190 N2190 N2190 N2190 N2190 N2190 N2190 N2190 N2190
DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE
RmrDprC_21 RmrDprC_22 RmrDprC_23 RmrDprC_24 RmrDprC_25 RmrDprC_26 RmrDprC_27 RmrDprC_28 RmrDprC_29 RmrDprC_30 RmrDprC_31 RmrDprC_32
AS AS AS AS AS AS AS AS AS AS AS AS
$A_DBR[RMR_DPR+336] $A_DBR[RMR_DPR+340] $A_DBR[RMR_DPR+344] $A_DBR[RMR_DPR+348] $A_DBR[RMR_DPR+352] $A_DBR[RMR_DPR+356] $A_DBR[RMR_DPR+360] $A_DBR[RMR_DPR+364] $A_DBR[RMR_DPR+368] $A_DBR[RMR_DPR+372] $A_DBR[RMR_DPR+376] $A_DBR[RMR_DPR+380]
;Inputs: JobResults N3000 DEFINE RmrDprR_Result N3010 DEFINE RmrDprR_Result_BUSY N3020 DEFINE RmrDprR_Result_ACTIVE N3030 DEFINE RmrDprR_Result_DONE N3040 DEFINE RmrDprR_Result_ABORTED N3050 DEFINE RmrDprR_Result_ERROR N3060 DEFINE RmrDprR_Result_2 N3070 DEFINE RmrDprR_Result_SAFE N3080 DEFINE RmrDprR_Result_GUI N3100 DEFINE RmrDprR_ErrorId N3200 N3210 N3220 N3230 N3240 N3250 N3260 N3270 N3280 N3290 N3300 N3310 N3320 N3330 N3340 N3350 N3360 N3370 N3380 N3390 N3400 N3410 N3420 N3430 N3440 N3450 N3460 N3470 N3480 N3490 DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE DEFINE RmrDprR_D1 RmrDprR_D2 RmrDprR_D3 RmrDprR_D4 RmrDprR_D5 RmrDprR_D6 RmrDprR_D7 RmrDprR_D8 RmrDprR_D9 RmrDprR_D10 RmrDprR_R1 RmrDprR_R2 RmrDprR_R3 RmrDprR_R4 RmrDprR_R5 RmrDprR_R6 RmrDprR_R7 RmrDprR_R8 RmrDprR_R9 RmrDprR_R10 RmrDprR_R11 RmrDprR_R12 RmrDprR_R13 RmrDprR_R14 RmrDprR_R15 RmrDprR_R16 RmrDprR_R17 RmrDprR_R18 RmrDprR_R19 RmrDprR_R20
AS AS AS AS AS AS
1) 2) 4) 8) 16)
AS $A_DBB[RMR_DPR+385] AS $A_DBB[RMR_DPR+386] AS $A_DBB[RMR_DPR+387] AS $A_DBD[RMR_DPR+388] AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS AS $A_DBD[RMR_DPR+392] $A_DBD[RMR_DPR+396] $A_DBD[RMR_DPR+400] $A_DBD[RMR_DPR+404] $A_DBD[RMR_DPR+408] $A_DBD[RMR_DPR+412] $A_DBD[RMR_DPR+416] $A_DBD[RMR_DPR+420] $A_DBD[RMR_DPR+424] $A_DBD[RMR_DPR+428] $A_DBR[RMR_DPR+432] $A_DBR[RMR_DPR+436] $A_DBR[RMR_DPR+440] $A_DBR[RMR_DPR+444] $A_DBR[RMR_DPR+448] $A_DBR[RMR_DPR+452] $A_DBR[RMR_DPR+456] $A_DBR[RMR_DPR+460] $A_DBR[RMR_DPR+464] $A_DBR[RMR_DPR+468] $A_DBR[RMR_DPR+472] $A_DBR[RMR_DPR+476] $A_DBR[RMR_DPR+480] $A_DBR[RMR_DPR+484] $A_DBR[RMR_DPR+488] $A_DBR[RMR_DPR+492] $A_DBR[RMR_DPR+496] $A_DBR[RMR_DPR+500] $A_DBR[RMR_DPR+504] $A_DBR[RMR_DPR+508]
;CHECK RESULT N4000 DEFINE RMR_BUSY N4010 DEFINE RMR_ACTIVE N4020 DEFINE RMR_DONE N9999 M17
AS 0 AS 1 AS 2
110
5 Lists
5.6
Description
Reserved bits Reserved safe inputs can be preassigned by a PLC with 0 or 1. The robot travels in both cases. If a safety function is assigned to a reserved input (e.g. for a software update) and this input is preassigned with 0, the robot would not travel or brought unexpectedly to standstill.
Note
KUKA recommends a preassignment of the reserve inputs with 1. If a reserved input is assigned with a new safety function and not yet used by the PLC of the customer, the safety function will not be activated. This prevents an unexpected standstill of the robot by the safety controller.
In the sample project, 32 inputs (E) and outputs (A) are each assigned. This assignment can be changed at any time by the OEM.
5.6.1
Table 5-12 Krc Safe Input Byte 0 Bit 0 1 Signal Res. NHE Description Reserved 1 The input must be assigned with 1 Input for external EMERGENCY STOP 0 = external EMERGENCY STOP is active 1 = external EMERGENCY STOP is not active Operator protection 0 = operator protection is not active, e.g. protective door open 1= operator protection is active Acknowledgement of the operator protection Prerequisite for an acknowledgement of the operator protection is the "Operator protection guaranteed" signaling in the BS bit. Note: If the BS signal is acknowledged by the system, this must be specified under Hardware options in the safety configuration. Information is contained in the Operating and Programming Instructions for system integrators. 0= operator protection is not acknowledged Edge 0 ->1 = operator protection is acknowledged STOP 1 safety stop (all axes) 0 US2 voltage is switched off 0 after 1.5 seconds The revocation of this function does not need to be acknowledged.
BS
QBS
SHS1
111
5 Lists
Bit
Signal
Description This signal is not permitted for the EMERGENCY STOP function. 0 = safety stop is active 1 = safety stop is not active
SHS2
STOP 2 safety stop (all axes) FF (travel release) is set to 0 The revocation of this function does not need to be acknowledged. This signal is not permitted for the EMERGENCY STOP function. 0 = safety stop is active 1 = safety stop is not active
6 7
Res. Res.
Table 5-13 Krc Safe Input Byte 1 Bit 0 Signal US2 Description US2 supply voltage (signal for switching the second unbuffered US2 supply voltage) If this input is not used, it should be assigned with 0. 0 = switch off US2 1 = switch on US2 Note: Whether and how the US2 input is used must be specified under Hardware options in the safety configuration. Information is contained in the Operating and Programming Instructions for system integrators. Safe operating stop (all axes) Precondition: All axes stationary The revocation of this function does not need to be acknowledged. This signal is not permitted for the EMERGENCY STOP function. 0 = safe operating stop is active 1 = safe operating stop is not active Reserved 11 The input must be assigned with 1 Reserved 12 The input must be assigned with 1 Reserved 13 The input must be assigned with 1 Reserved 14 The input must be assigned with 1 Reserved 15 The input must be assigned with 1 Shutdown PROFIsafe Acknowledge The system confirms that it has received the Shutdown signal. One second after setting the "SP" signal (Shutdown PROFIsafe) by the controller, the requested action is performed without confirmation by the PLC and the controller is shutdown. 0 = confirmation is not active 1 = confirmation is active
SBH
2 3 4 5 6 7
112
5 Lists
Table 5-14 Krc Safe Operation Input Byte 2 Bit 0 Signal JR Description Mastering test (input for mastering test switch of the mastering test) 0 = mastering test switch is active (dampened) 1 = mastering test switch is not active (not dampened) Reduced axis-specific and Cartesian velocity (activation of the reduced velocity monitoring) 0 = reduced velocity monitoring is active 1 = reduced velocity monitoring is not active Safe operating stop for axis group 1 6 Assignment: Bit 2 = axis group 1 bit 7 = axis group 6 Signal for the safe operating stop. The function does not initiate any stop but activates only the safe standstill monitoring. The revocation of this function does not need to be acknowledged. 0 = safe operating stop is active 1 = safe operating stop is not active
VRED
27
SBH1...6
Signal RES
07
Table 5-16 Krc Operation Input Byte 4 Bit 07 Signal UER18 Description Monitoring spaces 1 8 Assignment: Bit 0 = monitoring space 1 bit 7 = monitoring space 8 0 = monitoring space is active 1 = monitoring space is not active
Table 5-17 Krc Operation Input Byte 5 Bit 07 Signal UER9 16 Description Monitoring spaces 9 16 Assignment: Bit 0 = monitoring space 9 bit 7 = monitoring space 16 0 = monitoring space is active 1 = monitoring space is not active
Table 5-18 Krc Operation Input Byte 6 Bit 07 Signal WZ18 Description Tool selection 1 8 Assignment: Bit 0 = tool 1 bit 7 = tool 8 0 = tool is not active 1 = tool is active One tool must always be selected
113
5 Lists
Table 5-19 Krc Operation Input Byte 7 Bit 07 Signal WZ916 Description Tool selection 9 16 Assignment: Bit 0 = tool 9 bit 7 = tool 16 0 = tool is not active 1 = tool is active One tool must always be selected
5.6.2
Table 5-20 Krc Safe Output Byte 0 Bit 0 Signal NHL Description Local EMERGENCY STOP (local EMERGENCY STOP has been initiated) 0 = local EMERGENCY STOP is active 1 = local EMERGENCY STOP is not active Drive release (the KRC-internal safety controller has released the drives for switch-on) 0 = drive release is not active (the robot controller must switch off the drives) 1 = drive release is active (the robot controller may switch the drives to closed-loop control) Travel release (the KRC-internal safety controller has released robot motions) 0 = travel release is not active (the robot controller must stop the current motion) 1 = travel release is active (the robot controller may initiate a motion) One of the enabling switches is in the center position (enable in test operation is granted) 0 = enabling is not active 1 = enabling is active The Peri enabled signal is switched to 1 (active) when the following conditions have been met: Drives are switched on. Travel release of the safety controller is available. The "Operator protection open" message must not be pending. The manipulator is in the AUT or AUT EXT operating mode 0 = AUT or AUT EXT operating mode is not active 1 = AUT or AUT EXT operating mode is active The manipulator is in the Manually Reduced Velocity operating mode 0 = T1 operating mode is not active 1 = T1 operating mode is active The manipulator is in the Manually High Velocity operating mode 0 = T2 operating mode is not active 1 = T2 operating mode is active
AF
FF
ZS
PE
AUT
T1
D2
114
5 Lists
Table 5-21 Krc Safe Output Byte 1 Bit 0 Signal NHE Description External EMERGENCY STOP has been initiated 0 = external EMERGENCY STOP is active 1 = external EMERGENCY STOP is not active Operator protection 0 = operator protection is not guaranteed 1 = operator protection is guaranteed (BS input = 1 and, if configured, QBS input acknowledged) STOP 1 safety stop (all axes) 0 = STOP 1 safety stop is not active 1 = STOP 1 safety stop is active (safe state reached) STOP 2 safety stop (all axes) 0 = STOP 2 safety stop is not active 1 = STOP 2 safety stop is active (safe state reached) Reserved 13 Reserved 14 PROFIsafe active (indicator of the robot controller state as PROFIsafe device bus node) Precondition: PROFINET must be installed on the controller 0 = robot controller on the PROFIsafe bus is not active 1 = robot controller on the PROFIsafe bus is active Shutdown PROFIsafe (the robot controller announces the completion of the PROFIsafe connection) If after receiving the SP signal, the PLC sends the SPA signal as confirmation, PSA is set to 0, and the controller shuts down. One second after setting the SP signal, the robot controller resets the PSA output without confirmation of the PLC, and the controller shuts down. 0 = announcement that the connection completion is not active 1 = announcement that the connection completion is active
BS
SHS1
SHS2
4 5 6
SP
Table 5-22 Krc Safe Operation Output Byte 2 Bit 0 Signal SO Description SafeOperation active Activation state of SafeOperation 0 = SafeOperation is not active 1 = SafeOperation is active Robot referenced Indicator of the mastering test 0 = mastering test is required 1 = mastering test performed successfully Adjustment error The space monitoring is deactivated because at least one axis is not adjusted 0 = adjustment error, the space monitoring has been deactivated 1 = no error Reduced axis-specific and Cartesian velocity (activation state of the reduced velocity monitoring) 0 = reduced velocity monitoring is not active 1 = reduced velocity monitoring is active
RR
JF
VRED
115
5 Lists
Bit 45
Signal SBH12
Description Activation state of the safe operating stop for axis group 1 2 Assignment: Bit 4 = axis group 1 bit 5 = axis group 2 0 = safe operating stop is not active 1 = safe operating stop is active Reserved 23 24
67
RES
Table 5-23 Krc Safe Operation Output Byte 3 Bit 07 Signal RES Reserved 25 32 Description
Table 5-24 Krc Safe Operation Output Byte 4 Bit 07 Signal MR18 Description Message space 1 8 Assignment: Bit 0 = message space 1 (based monitoring space 1) bit 7 = message space 8 (based monitoring space 8) 0 = space is violated 1 = space is not violated
Table 5-25 Krc Safe Operation Output Byte 5 Bit 07 Signal MR916 Description Message space 9 16 Assignment: Bit 0 = message space 9 (based monitoring space 9) bi t 7 = message space 16 (based monitoring space 16) 0 = space is violated 1 = space is not violated
Table 5-26 Krc Safe Operation Output Byte 6 Bit 07 Signal RES Reserved 48 55 Description
Table 5-27 Krc Safe Operation Output Byte 7 Bit 07 Signal RES Reserved 56 63 Description
116
5 Lists
5.7
Resource requirement
5.7.1
112 bytes 512 bytes
5.7.2
NC memory
39,656 bytes RMR cycles 16 90 KB 140 NUM_GUD_NAMES_CHAN GUD_VALUES_MEM NUM_USER_MACROS (each channel)
5.7.3
Copyright Siemens AG 2013 All rights reserved
Inputs/outputs
Safe inputs (64) Safe outputs (64) Inputs (2032) Outputs (2032) (each robot) (each robot) (each robot) (each robot)
5.7.4
Run MyRobot FBs FCs DBs
PLC
mxAutomation FBs FCs DBs DBs 61,316 bytes 14,144 bytes 12,296 bytes 200 bytes (each robot)
5.7.5
32 32
SPL (INSEP/OUTSEP)
(each robot) (each robot)
117
6 Messages
6
6.1
Messages
From Run MyRobot
700031 0 0 "Run MyRobot: %1<RMRIDX>" 700063 0 0 "Run MyRobot: %1<RMRIDX>" ; Alarms 703100 0 703101 0 703102 0 703103 0 703104 0 703105 0 703106 0 703107 0 703108 703109 703110 703111 703112 703113 703114 703115 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run "Run MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: " " " " " " " " " " " " " Brake not OK" Wear limit for at least one brake reached" Mastering test switch defective" " " JOG JOG JOG JOG " " " " " " " " " " KRC in T1 operating mode" KRC in T2 operating mode" KRC in AUT operating mode" " " " " " Perform with NC Start" Mastering test requested" Brake test requested" Brake test monitoring time expired" Brake test active" " " " " " " " " " "
703116 703117 703118 703119 703120 703121 703122 703123 703124 703125 703126 703127 703128 703129 703130 703131
;Messages 703132 0 0 703133 0 0 703134 0 0 703135 0 0 703136 0 0 703137 0 0 703138 0 0 703139 0 0 703140 703141 703142 703143 703144 703145 703146 703147 703148 703149 703150 703151 703152 703153 703154 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
118
6 Messages
703155 0 0 "Run MyRobot: " 703156 703157 703158 703159 703160 703161 703162 703163 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "Run "Run "Run "Run "Run "Run "Run "Run MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: MyRobot: " " " " " " " "
6.2
Table 6-1 Error messages of the mxA interface in the robot interpreter No. 0 1 2
Copyright Siemens AG 2013 All rights reserved
Message INTERNAL ERROR ASSERT FAILED OVERFLOW STATUS RETURN QUEUE (MAIN) OVERFLOW STATUS RETURN QUEUE (TRIGGER) INVALID COMMAND QUEUE INDEX INVALID COMMAND STATE INVALID COMMAND ID INVALID MOVE TYPE OVERFLOW TRIGGER FIFO UNDERFLOW TRIGGER FIFO INVALID TRIGGER FIFO INDEX EXECUTION OF T_AFTER MISSING EXECUTION OF T_START MISSING INVALID ADVANCE_ACT TIMEOUT -
Cause -
Remedy
Internal exceptional error Internal exceptional error More than 100 checkbacks for status changes must be transferred from the robot controller to the PLC. The transmission rate is significantly lower than the processing speed. Internal exceptional error
Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF) Reduce the number of instructions to be buffered concurrently. If this is not possible, contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF) Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF)
7 8 9 10 11
Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error
12
13
14 16
Internal exceptional error Connection to the PLC is Re-establish the connection and
119
6 Messages
No.
Cause interrupted: PLC program stopped Connection cable defective or not attached correctly
Remedy then acknowledge the error: Reboot the PLC program. Replace the connection cable or attach it correctly. Program a correct value (Approximate parameter). (see "KST PLC mxAutomation S7" PDF)
30
An invalid approximate positioning parameter has been specified for a PTP motion. An invalid approximation parameter has been specified for a CP motion (LIN, CIRC). An invalid number for the BASE coordinate system has been programmed in the KRC_ReadBaseData or KRC_WriteBaseData function block. An invalid number for the BASE coordinate system has been programmed in a KRC_Move or KRC_Jog function block.
31
INVALID CP APO
32
Specify the number of the BASE coordinate system to be used currently in the robot controller (BaseNo parameter). 1 32 Specify the number of the BASE coordinate system to be used currently in the robot controller (CoordinateSystem COORDSYS.Base parameter). (see "KST PLC mxAutomation S7" PDF)
33
An invalid number for the TOOL coordinate system has been programmed in the KRC_ReadToolData or KRC_WriteToolData function block. An invalid number for the TOOL coordinate system has been programmed in a KRC_Move or KRC_Jog function block.
Specify the number of the TOOL coordinate system to be used currently in the robot controller (ToolNo parameter). 1 16 Specify the number of the BASE coordinate system to be used currently in the robot controller (CoordinateSystem COORDSYS.Base parameter). (see "KST PLC mxAutomation S7" PDF)
34
INVALID VELOCITY
An invalid value for the velocity has been programmed in a function block. An invalid value for the acceleration has been programmed in a function block. An invalid approximation distance has been specified for a PTP motion. An invalid distance parameter has been specified for an approximated motion. An invalid velocity
Program a correct value (Velocity parameter): 0 100% Program a correct value (Acceleration parameter): 0 100% Program a correct value (Approximate parameter). (see "KST PLC mxAutomation S7" PDF)
35
INVALID ACCELERATION
36
INVALID C_PTP
37
INVALID C_DIS
38
INVALID C_VEL
120
6 Messages
No.
Message
Remedy
39
INVALID C_ORI
An invalid orientation parameter has been specified for an approximated motion. An invalid value for the orientation control of the TCP has been programmed in a KRC_Move or KRC_Jog function block. No target position has been specified for the call of a KRC_Move function block. Program a correct value (OriType parameter). (see "KST PLC mxAutomation S7" PDF) Define at least one element of the target position (Position parameter). (see "KST PLC mxAutomation S7" PDF)
40
INVALID ORI_TYPE
41
42
No target position has been specified for the call of a KRC_MoveAxis function block. An invalid value for the switching point of the trigger has been programmed in a KRC_SetDistanceTrigger function block. An invalid output has been programmed in a KRC_SetDistanceTrigger or KRC_SetPathTrigger function block. An invalid value for the length of the pulse has been programmed in a KRC_SetDistanceTrigger or KRC_SetPathTrigger function block. No auxiliary position has been specified for the call of a KRC_MoveCirc function block.
Define at least one axis position (AxisPosition parameter). (see "KST PLC mxAutomation S7" PDF) Program a correct value (Distance parameter): 0: Switching action in the start point 1: Switching action in the target point Program a correct value (Output parameter): 1 2 048
43
44
INVALID TRIGGER IO
45
Program a correct value (Pulse parameter): 0.1 3.0 s 0.0 s (no pulse active)
46
INVALID CIRC_HP
Define at least one element of the auxiliary position (CircHP parameter). (see "KST PLC mxAutomation S7" PDF)
47
INVALID INTERRUPT IO
The number of the digital input on which an interrupt is declared is invalid (KRC_DeclareInterrupt function block). An invalid number has been specified for the call of a KRC_Interrupt function block.
48
121
6 Messages
No. 49
50
The interrupt reaction programmed for the declaration of an interrupt is invalid. The number of the digital input on which an interrupt is declared is invalid (KRC_DeclareInterrupt function block). An invalid value for the length of the pulse has been programmed in the KRC_WriteDigitalOutput function block. An invalid Buffer mode has been programmed in a function block, e.g. the DIRECT mode is not available for some function blocks. An invalid number for reading or writing the load data or the supplementary load data has been programmed in the KRC_ReadLoadData or KRC_WriteLoadData function block. An invalid number for the analog input or output has been programmed in a function block. An invalid value for the Interpolation mode has been programmed in a function block, e.g. in a KRC_Move function block.
Program a correct reaction (Reaction parameter): (see "KST PLC mxAutomation S7" PDF) Program a correct value (Input parameter): 1 2 048
51
INVALID IO NUMBER
52
Program a correct value (Pulse parameter): 0.1 3.0 s 0.0 s (no pulse active) Program a correct BufferMode. (see "KST PLC mxAutomation S7" PDF)
53
Copyright Siemens AG 2013 All rights reserved
INVALID BUFFER_MODE
54
Program a correct value (Tool parameter). (see "KST PLC mxAutomation S7" PDF)
55
Program a correct value (Number parameter): 1 32 Program a correct value (CoordinateSystem COORDSYS. IPO_MODE parameter). (see "KST PLC mxAutomation S7" PDF)
56
57
INVALID CIRC_TYPE
An invalid value for the orientation control during the circular motion has been programmed in a KRC_MoveCirc function block. Invalid TOOL or BASE data has been programmed in a KRC_WriteToolData or KRC_WriteBaseData function block. Invalid load data has been
Program a valid value (CircType parameter). (see "KST PLC mxAutomation S7" PDF) Program valid data (ToolData or BaseData parameter). (see "KST PLC mxAutomation S7" PDF) Program valid data.
58
59
INVALID LOAD
122
6 Messages
No.
Message DATA
Cause programmed in a KRC_WriteLoadData function block. Error while writing the software limit switches: Positive software limit switch < negative software limit switch (KRC_WriteSoftEnd or KRC_WriteSoftEndEx function block) Internal exceptional error
Remedy (see "KST PLC mxAutomation S7" PDF) Program a smaller value for the negative software limit switch than for the positive software limit switch.
60
61
Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF)
62
An index has been specified in a KRC_ReadSysVar or KRC_WriteSysVar function block for which no system variable exists. An invalid value for the system variable has been programmed in a KRC_WriteSysVar function block.
Program a correct value (Index parameter). (see "KST PLC mxAutomation S7" PDF) Program a correct value (Value1 Value10 parameter). (see "KST PLC mxAutomation S7" PDF)
63
Copyright Siemens AG 2013 All rights reserved
64
SYS VAR NOT WRITEABLE INVALID REAL VALUE ERROR SETTING OUTPUT
An error occurred while a system variable was being written. The specified system variable does not exist or cannot be written in the current operating state. The programmed real value is invalid. Error while writing a digital output. The output may possibly be already assigned by the system. Error while writing the software limit switches: A possible error is, for example, that a rotary axis is written with a value outside +/-360. Program a valid value: -2.147.483.500 +2.147.483.500 Use a different digital output (Number parameter): 1 2 048 Program valid values for the software limit switch (see machine data).
65
66
67
6.2.2
Table 6-2 Error messages of the mxA interface in the Submit interpreter No. 401 402 403 404 Message INTERNAL ERROR ASSERT FAILED INVALID COMMAND ID INVALID COMMAND STATE Cause Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error (see "KST PLC mxAutomation S7" PDF) Remedy Contact KUKA Roboter GmbH.
123
6 Messages
Message OVERFLOW COMMAND QUEUE INVALID COMMAND QUEUE INDEX INVALID COMMAND (PRE) QUEUE INDEX INVALID WRITE_Q_IDX AND WRITE_PRE_Q_ID X OVERFLOW STATUS RETURN QUEUE (SUBMIT)
Cause Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error
Remedy
409
More than 100 checkbacks for status changes are transferred from the robot controller to the PLC. The transmission rate is significantly lower than the processing speed. Internal exceptional error
Reduce the number of instructions to be buffered concurrently. If this is not possible, contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF) Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF)
410
412
The checksum during the data transmission from the PLC to the robot controller is invalid. Error during the start-up: PROFINET configuration in WorkVisual or STEP7 Error during operation: transmission WorkVisual and Step 7 and configure PROFINET correctly. Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF) Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF)
413
414
Connection to the PLC is interrupted: PLC program stopped Submit interpreter deselected or stopped Connection cable defective or not attached correctly
Re-establish the connection and then acknowledge the error: Reboot the PLC program. Restart the Submit interpreter. Replace the connection cable or attach it correctly.
416
An error occurred while a system variable was being read. The specified system variable does not exist or cannot be read in the current operating state. Example: Access to $POS_ACT is possible only after an BCO run. Internal exceptional error Internal exceptional error Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF)
417 418
124
6 Messages
No. 419 420 421 422 423 424 425 426 430
Message UNDERFLOW OF BYTE OVERFLOW OF BYTE UNDERFLOW OF INT16 OVERFLOW OF INT16 UNDERFLOW OF INT32 OVERFLOW OF INT32 UNDERFLOW OF REAL OVERFLOW OF REAL INVALID PTP APO
Cause Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error Internal exceptional error An invalid approximation parameter has been specified for a PTP motion. An invalid approximation parameter has been specified for a CP motion (LIN, CIRC). An invalid number for the BASE coordinate system has been programmed in the KRC_ReadBaseData or KRC_WriteBaseData function block. An invalid number for the BASE coordinate system has been programmed in a KRC_Move or KRC_Jog function block.
Remedy
Program a correct value (Approximate parameter). (see "KST PLC mxAutomation S7" PDF)
431
INVALID CP APO
432
Specify the number of the BASE coordinate system to be used currently in the robot controller (BaseNo parameter). 1 32 Specify the number of the BASE coordinate system to be used currently in the robot controller (CoordinateSystem - COORDSYS.Base parameter). (see "KST PLC mxAutomation S7" PDF)
433
An invalid number for the TOOL coordinate system has been programmed in the KRC_ReadToolData or KRC_WriteToolData function block. An invalid number for the TOOL coordinate system has been programmed in a KRC_Move or KRC_Jog function block.
Specify the number of the TOOL coordinate system to be used currently in the robot controller (ToolNo parameter). 1 16 Specify the number of the BASE coordinate system to be used currently in the robot controller (CoordinateSystem - COORDSYS.Base parameter). (see "KST PLC mxAutomation S7" PDF)
434
INVALID VELOCITY
125
6 Messages
No.
Message
Remedy (Velocity parameter): 0 100 % Program a correct value (Acceleration parameter): 0 100 % Program a correct value (Approximate parameter). (see "KST PLC mxAutomation S7" PDF)
435
INVALID ACCELERATION
An invalid value for the acceleration has been programmed in a function block. An invalid approximation distance has been specified for a PTP motion. An invalid distance parameter has been specified for an approximated motion. An invalid velocity parameter has been specified for an approximated motion. An invalid orientation parameter has been specified for an approximated motion. An invalid value for the orientation control of the TCP has been programmed in a KRC_Move or KRC_Jog function block. No target position has been specified for the call of a KRC_Move function block.
436
INVALID C_PTP
437
INVALID C_DIS
438
INVALID C_VEL
439
Copyright Siemens AG 2013 All rights reserved
INVALID C_ORI
440
INVALID ORI_TYPE
Program a correct value (OriType parameter). (see "KST PLC mxAutomation S7" PDF) Define at least one element of the target position (Position parameter). (see "KST PLC mxAutomation S7" PDF)
441
442
No axis position has been specified for the call of a KRC_MoveAxis function block.
Define at least one axis position (AxisPosition parameter). (see "KST PLC mxAutomation S7" PDF)
443
An invalid value for the switching point of the trigger has been programmed in the KRC_SetDistanceTrigger function block. An invalid output has been programmed in a KRC_SetDistanceTrigger or KRC_SetPathTrigger function block. An invalid value for the length of the pulse has been programmed in a KRC_SetDistanceTrigger
Program a correct value (Distance parameter): 0: Switching action in the start point 1: Switching action in the target point Program a correct value (Output parameter): 1 2 048
444
INVALID TRIGGER IO
445
Program a correct value (Pulse parameter): 0.1 3.0 s 0.0 s (no pulse active)
126
6 Messages
No.
Message
Remedy
446
INVALID CIRC_HP
No auxiliary position has been specified for the call of a KRC_MoveCirc function block.
Define at least one element of the auxiliary position (CircHP parameter). (see "KST PLC mxAutomation S7" PDF)
447
INVALID INTERRUPT IO
The number of the digital input on which an interrupt is declared is invalid (KRC_DeclareInterrupt function block). An invalid number has been specified for the call of a KRC_Interrupt function block. Interrupt has not be declared.
448
Program a correct value (Interrupt parameter): 18 Declare interrupt. (see "KST PLC mxAutomation S7" PDF)
449
450
The interrupt reaction programmed for the declaration of an interrupt is invalid. The number of the digital input on which an interrupt is declared is invalid (KRC_DeclareInterrupt function block). An invalid value for the length of the pulse has been programmed in the KRC_WriteDigitalOutput function block.
Program a correct reaction (Reaction parameter): (see "KST PLC mxAutomation S7" PDF) Program a correct value (Input parameter): 1 2 048
451
INVALID IO NUMBER
452
Program a correct value (Pulse parameter): 0.1 3.0 s 0.0 s (no pulse active) (see "KST PLC mxAutomation S7" PDF)
453
INVALID BUFFER_MODE
An invalid Buffer mode has been programmed in a function block, e.g. the DIRECT mode is not available for some function blocks. An invalid number for reading or writing the load data or the supplementary load data has been programmed in the KRC_ReadLoadData or KRC_WriteLoadData function block. An invalid value for the velocity has been
Program a correct BufferMode. (see "KST PLC mxAutomation S7" PDF) Program a correct value (Tool parameter). (see "KST PLC mxAutomation S7" PDF)
454
455
127
6 Messages
No.
Message
Remedy
456
INVALID IPO_MODE
An invalid value for the Interpolation mode has been programmed in a function block, e.g. in a KRC_Move function block. An invalid value for the orientation control during the circular motion has been programmed in a KRC_MoveCirc function block. Invalid TOOL or BASE data has been programmed in a KRC_WriteToolData or KRC_WriteBaseData function block. Invalid load data has been programmed in a KRC_WriteLoadData function block. Error while writing the software limit switches: Positive software limit switch < negative software limit switch Internal exceptional error
Program a correct value (CoordinateSystem COORDSYS. IPO_MODE parameter). (see "KST PLC mxAutomation S7" PDF) Program a correct value (CircType parameter). (see "KST PLC mxAutomation S7" PDF) Program valid data (ToolData or BaseData parameter). (see "KST PLC mxAutomation S7" PDF) Program valid data. (see "KST PLC mxAutomation S7" PDF) Program a smaller value for the negative software limit switch than for the positive software limit switch. Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF)
457
INVALID CIRC_TYPE
458
459
460
461
462
An index has been specified in a KRC_ReadSysVar or KRC_WriteSysVar function block for which no system variable exists. An invalid value for the system variable has been programmed in a KRC_WriteSysVar function block.
Program a correct value (Index parameter). (see "KST PLC mxAutomation S7" PDF)
463
Program a correct value (Value1 Value10 parameter). (see "KST PLC mxAutomation S7" PDF)
464
An error occurred while a system variable was being written. The specified system variable does not exist or cannot be written in the current operating state. The programmed real value is invalid. Error while writing an Program a valid value: -2.147.483.500 +2.147.483.500 Use a different digital output
465
466
128
6 Messages
No.
Message OUTPUT
Cause output. The output may possibly be already assigned by the system. An error occurred while a software limit switch was being written. A possible error is, for example, that a rotary axis is written with a value outside +/360.
Remedy (Number parameter): 1 2 048 Program valid values for the software limit switch (see machine data).
467
6.2.3
503
The software versions for the mxA interface and the PLC library are not compatible.
505
The index of the axis group specified in the KRC_ReadAxisGroup function block is already assigned.
506
INVALID GROUPREFIDX
The index of the axis group specified in the function block is invalid.
507
INVALID FB ORDER
The sequential order in which the function blocks are called is invalid.
508
129
6 Messages
No.
Message
509 510
Re-establish the connection and then acknowledge the error: Reboot the robot controller. Restart the Submit interpreter. Validate the I/O configuration. Replace the connection cable or attach it correctly. Increase the value for MaxSubmitCycle in the KRC_DIAG function block. Reset an ExecuteCmd input only after an activation when the function block confirms the processing of the instruction using the Busy signal or rejects with an error message.
Robot controller is switched off Submit interpreter deselected or stopped Bus error or faulty I/O configuration Connection cable defective or not attached correctly The maximum cycle time of the Submit interpreter is too short (only for message number 510)
511
An active function block is no longer called or the ExecuteCmd input has been reset before the instruction could be transferred.
512
The checksum during the data transmission from the robot controller to the PLC is invalid. Error during the start-up: PROFINET configuration in WorkVisual or Step 7 configuration in WorkVisual and Step 7 and configure PROFINET correctly. Contact KUKA Roboter GmbH. (see "KST PLC mxAutomation S7" PDF)
513
An invalid number for the position to be taught has been specified in the KRC_TouchUP function block. The current position cannot be taught because the position data is invalid (no BCO).
Program a correct value (Index parameter). 1 100 Establish BCO with a RESET on the KRC_AutomaticExt ernal function block.
514
POS_ACT INVALID
130
6 Messages
No. 515
Cause Error during the PROFINET transfer: PROFINET device PROFINET configuration in WorkVisual or Step 7 us error
Remedy Validate the configuration in WorkVisual and Step 7 and configure PROFINET correctly.
131
7 References
7
7.1
References
References
This list does not claim to be complete and only provides a selection of suitable references.
Table 7-1 Topic /1/ STEP 7 SIMATIC S7-300/400 Title Automation with STEP 7 in STL and SCL Author: Hans Berger Publicis MCD Verlag ISBN: 978-3-89578-397-5 Automation with STEP 7 in LAD and FDB Author: Hans Berger Publicis MCD Verlag ISBN: 978-3-89578-296-1 KST_PLC_mxAutomation_S7_10_de.pdf KUKA Roboter GmbH Externes_Bediengeraet_de.pdf KUKA Roboter GmbH KST_SafeOperation_31_de.pdf KUKA Roboter GmbH KSS_82_SI_de.pdf KUKA Roboter GmbH KR_C4_PROFINET_22_de.pdf KUKA Roboter GmbH
/2/
/3/
Copyright Siemens AG 2013 All rights reserved
KUKA KRC4 mxAutomation KUKA KRC4 mxAutomation KUKA KRC4 Safe Operations KUKA KRC4 Operating and programming KUKA KRC4 PROFINET
/7/
7.2
Internet links
This list does not claim to be complete and only provides a selection of suitable information.
Table 7-2 Topic \1\ \2\ Reference to the article Siemens Industry Online Support Title
http://support.automation.siemens.com/WW/view/de/67701073 http://support.automation.siemens.com
132
8 Contacts
Contacts
Siemens AG Industry Sector I DT MC MTS APC Frauenauracher Strasse 80 D - 91056 Erlangen, Germany E-mail: MC-MTS-APC-Tech-Team.i-dt@siemens.com
History
Table 9-1 Version V2.0 Date 18.06.2013 This version Modification
133