Beruflich Dokumente
Kultur Dokumente
Handling Advanced
V2.4
Siemens
Changelog Industry
Online
https://support.industry.siemens.com/cs/ww/en/view/85014317 Support
Legal information
Legal information
Use of application examples
Application examples illustrate the solution of automation tasks through an interaction of several
components in the form of text, graphics and/or software modules. The application examples are
a free service by Siemens AG and/or a subsidiary of Siemens AG (“Siemens”). They are non-
binding and make no claim to completeness or functionality regarding configuration and
equipment. The application examples merely offer help with typical tasks; they do not constitute
customer-specific solutions. You yourself are responsible for the proper and safe operation of the
products in accordance with applicable regulations and must also check the function of the
respective application example and customize it for your system.
Siemens grants you the non-exclusive, non-sublicensable and non-transferable right to have the
application examples used by technically trained personnel. Any change to the application
examples is your responsibility. Sharing the application examples with third parties or copying the
application examples or excerpts thereof is permitted only in combination with your own products.
The application examples are not required to undergo the customary tests and quality inspections
of a chargeable product; they may have functional and performance defects as well as errors. It is
your responsibility to use them in such a manner that any malfunctions that may occur do not
result in property damage or injury to persons.
Disclaimer of liability
Siemens shall not assume any liability, for any legal reason whatsoever, including, without
limitation, liability for the usability, availability, completeness and freedom from defects of the
application examples as well as for related information, configuration and performance data and
any damage caused thereby. This shall not apply in cases of mandatory liability, for example
under the German Product Liability Act, or in cases of intent, gross negligence, or culpable loss of
life, bodily injury or damage to health, non-compliance with a guarantee, fraudulent
non-disclosure of a defect, or culpable breach of material contractual obligations. Claims for
damages arising from a breach of material contractual obligations shall however be limited to the
Siemens AG 2018 All rights reserved
foreseeable damage typical of the type of agreement, unless liability arises from intent or gross
negligence or is based on loss of life, bodily injury or damage to health. The foregoing provisions
do not imply any change in the burden of proof to your detriment. You shall indemnify Siemens
against existing or future claims of third parties in this connection except where Siemens is
mandatorily liable.
By using the application examples you acknowledge that Siemens cannot be held liable for any
damage beyond the liability provisions described.
Other information
Siemens reserves the right to make changes to the application examples at any time without
notice. In case of discrepancies between the suggestions in the application examples and other
Siemens publications such as catalogs, the content of the other documentation shall have
precedence.
The Siemens terms of use (https://support.industry.siemens.com) shall also apply.
Security information
Siemens provides products and solutions with industrial security functions that support the secure
operation of plants, systems, machines and networks.
In order to protect plants, systems, machines and networks against cyber threats, it is necessary
to implement – and continuously maintain – a holistic, state-of-the-art industrial security concept.
Siemens’ products and solutions constitute one element of such a concept.
Customers are responsible for preventing unauthorized access to their plants, systems, machines
and networks. Such systems, machines and components should only be connected to an
enterprise network or the internet if and to the extent such a connection is necessary and only
when appropriate security measures (e.g. firewalls and/or network segmentation) are in place.
For additional information on industrial security measures that may be implemented, please visit
https://www.siemens.com/industrialsecurity.
Siemens’ products and solutions undergo continuous development to make them more secure.
Siemens strongly recommends that product updates are applied as soon as they are available
and that the latest product versions are used. Use of product versions that are no longer
supported, and failure to apply the latest updates may increase customer’s exposure to cyber
threats.
To stay informed about product updates, subscribe to the Siemens Industrial Security RSS Feed
at: http://www.siemens.com/industrialsecurity.
Table of contents
Legal information ..................................................................................................... 2
1 Introduction .................................................................................................... 4
2 TopLoading V1.8.5 and V1.9.5 ....................................................................... 5
2.1 General Information ........................................................................... 5
2.2 Changelog ......................................................................................... 5
2.3 Upgrade from V1.8.2 and V1.9.2........................................................ 5
3 TopLoading V2.0.9.......................................................................................... 7
3.1 General Information ........................................................................... 7
3.2 Changelog ......................................................................................... 7
3.3 Upgrade V1.8.5/V1.9.5 ...................................................................... 7
4 TopLoading V2.0.15...................................................................................... 11
4.1 General Information ......................................................................... 11
4.2 Changelog ....................................................................................... 11
5 TopLoading V2.2 .......................................................................................... 13
5.1 General Information ......................................................................... 13
5.2 Changelog ....................................................................................... 13
5.3 Upgrade from V02.00.x .................................................................... 14
6 TopLoading V2.3 .......................................................................................... 15
Siemens AG 2018 All rights reserved
1 Introduction
This document tracks the innovations of the actual Handling Advanced version
(former name: TopLoading) compared to its previous version. Also it describes the
steps to upgrade from the previous version to the actual one. This is necessary,
since improvements and new functionalities cannot always be implemented in a full
compatible way. This document should ease your upgrade to a new Handling
Advanced library.
2.2 Changelog
TopLoading V1.8.5 / V1.9.5 has the following changes compared to its previous
version:
The rounding method for segments is no global parameter for the complete
segment anymore. Now it is a property of each segment points. It is possible to
mix different rounding methods within one segment.
The points of a segment can now be used as interpolation points for a cubic
spline.
By now, an absolute definition of switch points for output cams is possible.
You can define dynamic zones in object coordinate systems.
There is a new velocity profile type called SEMI_COMPLETE. You should use
this profile type, since its calculation time is much faster compared to the older
Siemens AG 2018 All rights reserved
COMPLETE method.
With the velocity profile type PATH_DYNAMICS you can create a velocity
profile with a constant path velocity.
There is a new zone type called ROTATED_CUBOID. With this zone type you
can define rotated zones (e.g. blocked zones).
//points segment 1
//+++++++++++++++++++++++++++++++++++( X, Y, Z, R1, R2);
gsSegment[1].aPoint[1] := _fc_3Dpoint( 0, 0, 0, 0, 0);
gsSegment[1].aPoint[2] := _fc_3Dpoint( 200, 600, 500, 200, 300);
gsSegment[1].aPoint[3] := _fc_3Dpoint( 900, 600, 200, 150, 200);
gsSegment[1].aPoint[4] := _fc_3Dpoint(1400, 100, 100, 200, 100);
gsSegment[1].aPoint[5] := _fc_3Dpoint(2050, 0, 0, 0, 0);
is changed to:
gsSegment[1].u8PointNumber := 5;
Siemens AG 2018 All rights reserved
3 TopLoading V2.0.9
3.1 General Information
TopLoading V2.0.9 can be utilized with version 4.2.x of SIMOTION; earlier versions
are not supported anymore.
3.2 Changelog
TopLoading V2.0.9 has the following changes compared to the previous versions
V1.8.5/V1.9.5:
New segment type (“basic segment”) designed especially for the area of pick
and place applications, e.g. simple definition of path motion in different (also
moved) coordinate systems with support of the synchronous axis.
To distinguish between the new basic segment and the previous segment, the
previous one is referred to as “interpolation point based segment”.
Traversing program trace – records the commands during the processing of
the traversing program and writes them into a ring buffer.
Command extension for superimposed synchronous motion (camming and
gearing). The following objects of the axes which are assigned to TopLoading
are detected automatically and don’t have to be assigned individually..
Siemens AG 2018 All rights reserved
.decodingConfig.maximalBufferedMotionCommands >= 3
.interpolationConfig.commandsForPathDynamics = WITHOUT_REDUCTION
.interpolationConfig.attachPath = STEADILY_IN_ACCELERATION //(from V4.3)
.interpolationConfig.commandsForPathDynamics = 3 //(from V4.3)
Data structures
State structure:
The diagnosis and state structures of the blocks FB_Interpolation and
FB_Preparation are omitted and are replaced by a global state structure for all
TopLoading blocks (sState).
Example:
is changed to
Coordinate systems
The previous structure techno.aOCS[n], consisting of configuration and state
variables of the object coordinate systems, is replaced by two structures with an
Siemens AG 2018 All rights reserved
appropriate separation:
techno.sCSConfig - Configuration data of the coordinate systems
state.sCSState - State data of the coordinate systems
Example:
gsTechno.sCsState.sTrackingState.i32DefaultCs := 0;
is changed to
gsTechno.sCSConfig.i32DefaultCS := 0;
// Translation
gsTechno.aOcs[1].sCoordFrame.aTrans[1] := 0.0;
gsTechno.aOcs[1].sCoordFrame.aTrans[2] := 0.0;
gsTechno.aOcs[1].sCoordFrame.aTrans[3] := 0.0;
// Rotation
gsTechno.aOcs[1].sCoordFrame.aRot[1] := 0.0;
gsTechno.aOcs[1].sCoordFrame.aRot[2] := 0.0;
gsTechno.aOcs[1].sCoordFrame.aRot[3] := 0.0;
gsTechno.aOcs[1].toTrackingIn := TO#NIL;
is changed to
// Translation
gsTechno.sCsConfig.aOcs[1].sCoordFrame.aTrans[1] := 0.0;
gsTechno.sCsConfig.aOcs[1].sCoordFrame.aTrans[2] := 0.0;
gsTechno.sCsConfig.aOcs[1].sCoordFrame.aTrans[3] := 0.0;
// Rotation
gsTechno.sCsConfig.aOcs[1].sCoordFrame.aRot[1] := 0.0;
gsTechno.sCsConfig.aOcs[1].sCoordFrame.aRot[2] := 0.0;
gsTechno.sCsConfig.aOcs[1].sCoordFrame.aRot[3] := 0.0;
gsTechno.sCsConfig.aOcs[1].toTrackingIn := TO#NIL;
gsTechno.sCSConfig.rDriftLength := 50.0;
is changed to
gsTechno.sCSConfig.sGeo.sInterpolationSeg.rDriftLength := 50.0;
Function blocks
The interfaces of the TopLoading function blocks are changed as follows - because
of the new global state structure as well as the additional point structure for the
basic segment:
Siemens AG 2018 All rights reserved
is changed to
is changed to
is changed to
,segment := gasSegment
,state := gsState);
CMD_CLOSE_GRIPPER
CMD_OPEN_GRIPPER
Alarm messages
As a result of the changes and extensions in functionality, new error Ids as well as
alarmS messages have been generated. These alarmS messages need to be
added to the project (see file Alarm_S.txt).
4 TopLoading V2.0.15
4.1 General Information
TopLoading V2.0.15 can be utilized with version 4.2.x of SIMOTION; earlier
versions are not supported anymore.
4.2 Changelog
TopLoading V2.0.15 has the following changes to the previous versions to V2.0.9:
The working height of the basic segment now has a different effect on the
movement. At versions <= V2.0.12 the defined working height was reduced too
much in a lot of cases. This behavior was unrequested, as there was a non-
optimal path. Since version V2.0.13 the working height is optimized in another
way. This has to be considered in any case if there is a change to versions
equal to or higher than V2.0.13! If the distance between start point and the
target point is big enough, at applications without conveyor tracking the defined
working height is usually reached now. For applications with conveyor tracking
the movement will stay slightly below the defined working height. If the
distance between start point and target point is very small, the working height
is reduced in the same matter as before.
The working height is still not passed.
Siemens AG 2018 All rights reserved
To use the complete working height there are two boundary conditions, that
have to be fulfilled:
o The start vector direction and the target vector direction have to be defined
and oriented in the same direction.
o The defined working height of the start point and of the target point may
differ in absolute value, but finally they have to result in the same working
height. Explanation see picture below:
workingHeight
workingHeight
OK NOT OK
The parameterization of the behavior of the working height is done via the following
ENUM:
sTechno.sInternal.sAddOn.sBasicSegAdvConfig.eTransitionHeight := {STANDARD,
COMPATIBILITY_MODE}; Initial value is STANDARD
To re-establish the old behavior this ENUM has to be set to
COMPATIBILITY_MODE, so the working height is used like with the old library
versions.
Since Version V2.0.13 it’s possible to move with the basic segment between
two points, that both have no defined vector directions. This kind of movement
results in a linear movement from the start point to the target point.
With the basic segment command there is a movement without a polynomial
path possible. If the end point of the start vector and the start point of the target
vector are the same, only the two linear movements are executed. If a
positioning of the orientation axis is necessary, this positioning is made after
the start vector. There is also a single movement of the orientation axis
possible without any path motion. For a movement without polynomial path
there is a new constant to consider: MIN_POLY_LENGTH_BASIC_SEG (unit
hdGlType, initial value 1.0) defines the minimum length of the polynomial path.
If the length of the polynomial path is below this constant, there is a linear path
movement from the start point of the whole movement to the start point of the
target vector
Siemens AG 2018 All rights reserved
5 TopLoading V2.2
5.1 General Information
TopLoading V2.2 can be utilized with version 4.2.x of SIMOTION; earlier versions
are not supported anymore.
5.2 Changelog
Arbitrary number of path synchronous axes
It is possible do define multiple path synchronous axes in TopLoading. The
structure has changed in the following way:
gsTechno.sKinematic.sPathAxes.W2 := 5;
is changed to
gsTechno.sKinematic.sSyncAxes.W[1] := 5;
Siemens AG 2018 All rights reserved
Alarm messages
As a result of the changes and extensions in functionality, new error Ids as well as
alarmS messages have been generated. These alarmS messages need to be
added to the project (see file Alarm_S.txt).
Note Further details to the new functionalities can be found in the function manual and
in the parameter manual.
gaboCondition : Array_HD_ProgCond;
myFB_Interpolation (
enable := TRUE,
cmd := gsCmd,
techno := gsTechno,
segment := gasSegmentTable,
pointTable := gasPointTable,
condition := gaboCondition,
state := gsState
);
myFB_Preparation (
enable := TRUE,
boAddon := FALSE,
Siemens AG 2018 All rights reserved
modeIn := geModeInPrep,
cmd := gsCmdPrep,
cmdIpo := gsCmd,
cmdAddon := gsCmd,
techno := gsTechno,
prog := gsProgram,
segment := gasSegmentTable,
condition := gaboCondition,
state := gsState,
modeOut => geModeOutPrep
);
myFB_Calculation (
techno := gsTechno,
segment := gasSegmentTable,
pointTable := gasPointTable,
state := gsState
);
6 TopLoading V2.3
6.1 General Information
TopLoading V2.3 can be utilized with version 4.2.x of SIMOTION; earlier versions
are not supported anymore.
6.2 Changelog
Revision of the external Transformation
Considerably changes have been done with the external Transformation.
A wide monitoring of the function is now available. Deviations of the set point due
to limitations can now be checked related to the axis as well as to the path motion
(cmdPathTolerance and cmdValueTolerance). Deviations of the path set point due
to the following error can also be monitored (actPathFollowingError). Both
monitoring are correct timed and do not depend on the velocity as they had before.
Note When updating a transformation to TopLoading V02.03, the limit values should
be redefined.
A new method of activating was added. The axes can be positioned smooth to their
set point before starting. The maximum distance until this applies is changeable.
Siemens AG 2018 All rights reserved
The whole motion vector (position, velocity, acceleration) can be transformed, if the
particular transformation formulas are available. This will result in better signal
sequences.
gsTechno.sNumberOfAxis.sAx[..].sConfigEStop.sDynPull
New:
gsTechno.sNumberOfAxis.sAx[..].sPullDynamics
Specification of the expected mean velocity of the master axis when doing Conveyor
Tracking with the Basic Segment
For improved synchronization behavior to non-constant master axes, it is possible
to specify the expected mean velocity of the conveyor
(sTechno.sCSConfig.aOCS[...].sBasicSeg.r64MeanVelo). If r64MeanVelo = 0.0,
this functionality is deactivated and as before, the actual master velocity will be
taken into account for synchronizing.
New calculation mode for the implied determination of the start vector or target vector
The new calculation mode PLANE is suitable especially for diagonal specified
vectors.
Siemens AG 2018 All rights reserved
Alarm messages
As a result of the changes and extensions in functionality, new error Ids as well as
alarmS messages have been generated. These alarmS messages need to be
added to the project (see file Alarm_S.txt).
Note Further details to the new functionalities can be found in the function manual and
in the parameter manual.
Old:
gsTechno.sNumberOfAxis.sAx[..].sConfigEStop.sDynPull.rVelo := 10.0;//%
gsTechno.sNumberOfAxis.sAx[..].sConfigEStop.sDynPull.rAccel := 10.0;//%
gsTechno.sNumberOfAxis.sAx[..].sConfigEStop.sDynPull.rDecel := 10.0;//%
gsTechno.sNumberOfAxis.sAx[..].sConfigEStop.sDynPull.rJerk := 10.0;//%
New:
gsTechno.sNumberOfAxis.sAx[..].sPullDynamics.rVelo := 10.0;//%
gsTechno.sNumberOfAxis.sAx[..].sPullDynamics.rAccel := 10.0;//%
Siemens AG 2018 All rights reserved
gsTechno.sNumberOfAxis.sAx[..].sPullDynamics.rDecel := 10.0;//%
gsTechno.sNumberOfAxis.sAx[..].sPullDynamics.rJerk := 10.0;//%
7.2 Changelog
New function set Segment cams
With Handling Advanced V2.4 it is possible to write path movements defined in the
segment structure (struct_HD_segment) into a set of cams for the used path- and
Siemens AG 2018 All rights reserved
synchronous axes. This functionality can be applied to move the tool on a defined
path coupled to a leading value (forward and backward direction).
The new technology-substructure techno.sCamSeg is for connecting and
parametrization of the cam sets. The calculation state for each cam set can be
observed in the state.sCamSeg - structure.
It is possible to create the following values of the cam sets with reference to the
path axes (A1…A3; techno.sCamSeg.sParameter.eOutputMode = PATH_AXES)
or to the cartesian axes (X, Y, Z; techno.sCamSeg.sParameter.eOutputMode =
CARTESIAN).
The leading value can be set as reference to time or position
(techno.sCamSeg.sParameter.eBaseMode = {TIME_BASED,
POSITION_BASED}). Reference to time is established with the velocity profile of
the segment.
Depending on the write mode techno.sCamSeg.asCamSeg[…].eWriteMode =
{ADD_CAM, RESET_CAM}, a cam set can be build out of various segment and
dwell sections.
Furthermore, there are commands for coupling and moving the used path- and
synchronous axes:
CMD_POS_CAM_SEG_START: Position all axes to their start position of a set
CMD_POS_CAM_SEG_PATH_AXES: Coupling and single movement of a path
axes cam set
Extended possibility for setting the transition dynamics of the basic segment
In addition to the specification of the dynamics at vector transitions using basic
segment by having dynamic data sets, it is now possible to set the desired velocity
directly.
Siemens AG 2018 All rights reserved
Adaption of the synchronizing points when blending motions of the basic segment
In some special cases, blending between two basic segment commands with
dynamic adaption mode sBasicSegAdvConfig.sBlendingConfig.
eBlendingGeoDynAdaptMode = NONE can lead to slightly inconvenient path
behaviour while synchronising to a moved target-CS.
Normally, the reason for this behaviour is an unfavourable combination of low path
velocity, high synchronization dynamics and the position of the points. In order to
avoid this, the synchronisation points can be shifted to a higher path velocity.
The automatic adaption is activated by setting the following parameter:
techno.sInternal.sAddOn.sBasicSegAdvConfig.sBlendingConfig.
eBlendingSyncPointAdaption := ACTIVE;
New mode for conveyor tracking position pre control at basic segment
The new position pre control mode eAdaptTargetPoint = AUTOMATIC can be used
for smoother synchronization movement when having a high conveyor velocity.
Basically, this mode is an direction-depending mixture between the modes
REGARD_SYNCHRONIZING_PHASE and REGARD_MOVEMENT_IN_START_
CS.
The new mode is activated by setting the following parameter:
techno.sInternal.sAddOn.sBasicSegAdvConfig.eAdaptTargetPoint := AUTOMATIC;
8 Contact
Siemens AG
DF FA PMA APC
Frauenauracher Straße 80
91056 Erlangen
Germany
mailto: tech.team.motioncontrol@siemens.com
Siemens AG 2018 All rights reserved
9 History
Table 9-1 History
Version Date Modifications
V1.9.5 04/2012 First Release
V2.0.9 08/2012 Updated
V2.0.15 02/2013 Updated
V2.2 03/2014 Updated
V2.3 12/2016 Updated
V2.4 06/2017 Updated
V2.4 12/2017 Updated
V2.4 01/2018 Updated, Renaming to Handling Advanced
Siemens AG 2018 All rights reserved