+ All Categories
Home > Documents > Tm441 Asim Multi-Axis Functions

Tm441 Asim Multi-Axis Functions

Date post: 03-Dec-2014
Category:
Upload: edward-armijo
View: 122 times
Download: 4 times
Share this document with a friend
Popular Tags:
171
ASiM Multi-Axis Functions TM441
Transcript
Page 1: Tm441 Asim Multi-Axis Functions

ASiM Multi-Axis FunctionsTM441

Page 2: Tm441 Asim Multi-Axis Functions

2 TM441 AS M Mu Ax s Func ons

Introduction

Requirements

Training modules: TM440 – ASiM Basic Functions

Software: Automation Studio

Automation Runtime 2.80

ACP10_MC Library 1.170

Hardware: None

i lti- i ti

Page 3: Tm441 Asim Multi-Axis Functions

Introduction

Table of contents

1. INTRODUCTION 4

1.1 Training guide objectives 5

2. GENERAL INFORMATION ABOUT CONNECTING DRIVES 6

3. ELECTRONIC GEARS 9

3.1 Simple link 9

3.2 Dynamic phase shift 20

4. ELECTRONIC CAM PROFILES 24

4.1 Introduction 24

4.2 Creating cam profiles 26

4.3 Linking functions 40

5. CAM PROFILE AUTOMAT 50

5.1 Introduction 50

5.2 Structure and functionality 52

5.3 Implementing the cam profile automat 54

5.4 Compensation gear 76

6. SUMMARY 84

7. APPENDIX 85

ASiM Multi-Axis Functions TM441 3

Page 4: Tm441 Asim Multi-Axis Functions

Introduction

1. INTRODUCTION

The B&R drive solution (ACOPOS) provides flexible, high-performance tools for linking drives electronically. This makes it possible, for example, to create synchronous drives that are linked together for linear as well as for dynamic (non-linear) movements. In practice, there are many applications for doing this such as synchronous cutting procedures, dynamic transfer processes and flexible length partitioning.

Corresponding function blocks are provided in their usual form by theACP10_MC library for comprehensive operation of these functions.

Fig. 1 ACP10_MC library

This training module deals with the use of different functions for configuring and controlling electronically linked movement sequences.

Fig. 2 Cartoning

We will first look at a brief overview to become familiar with the individual options. With the help of a few theoretical basics and ideas, we will then learn about how to use multi-axis functions.

4 TM441 ASiM Multi-Axis Functions

Page 5: Tm441 Asim Multi-Axis Functions

Introduction

1.1 Training guide objectives

Participants will become familiar with the possibilities for using the MotionControl multi-axis functions (ACP10_MC).

You will be able to use selected functions to link drives together and to implement specific sequences while the drives are linked.

You will learn the procedure for creating linear and non-linear cam profiles and will be able to apply this knowledge for linking drives together electronically.

Fig. 3 Overview

ASiM Multi-Axis Functions TM441 5

Page 6: Tm441 Asim Multi-Axis Functions

General Information about Connecting Drives

2. GENERAL INFORMATION ABOUT CONNECTING DRIVES

What does it mean to link drives electronically?

Linking the drives electronically results in a predefined synchronized movement.

Example:

Drive A is linked to drive B via the position. This means that while the drives are actively linked, drive A must adjust its position in a specified manner according to the position of drive B. In this case, drive B is the master (specifies a reference position) and drive A the slave (position based on the master position).

Fig. 4 Predefined drive link

A drive link requires a master signal, which provides the reference (position, target) and at least one slave drive, which must follow this reference value using a specific "rule". When doing this, the master signal does not have to come from an actual drive, as discussed in the example. In principle, drives can also be linked to different suitable reference values (external encoder, time, etc.).

Note:

The master remains unaffected by the linking procedure. It is simply used as the basis for the desired linking signal. If for example, a drive's position value is used as master signal, then this master axis can still be given a command even while the drive link is active. In this situation, the slave drive is completely depending on the master signal.

The shape of the position link (i.e. "position rule" that the slave drive must use to follow the master signal) can be clearly displayed in a diagram with a comparison of the master and slave position.

6 TM441 ASiM Multi-Axis Functions

Page 7: Tm441 Asim Multi-Axis Functions

General Information about Connecting Drives

This is shown in the image below for a linear relationship between the master and slave position:

Fig. 5 Linear link

The position of the linked master is shown in the horizontal direction. The position of the linked slave can be seen in the vertical direction.

When the master signal changes uniformly (e.g. a master axis movement at constant speed), the speed of the slave axis is also constant (constant position change) according to this specification.

In this case, we are talking about an "electronic gear", a type of link which is used quite often. The gear ratio is represented by the slope of the "linear curve":

Fig. 6 Gear ratio

However, the position relationship does not have to be linear. In principle, electronic cam profiles can be created and used for any positioning processes necessary.

Fig. 7 Non-linear positioning path

ASiM Multi-Axis Functions TM441 7

Page 8: Tm441 Asim Multi-Axis Functions

General Information about Connecting Drives

A single link for an electronic gear as well as a link via cam profiles can be quickly implemented for the ACOPOS. A cam profile editor is provided in Automation Studio for creating user-specific cam profiles. Function blocks used to configure and control the drive links can be found in the ACP10_MC library.

The cam profile automat offers extensive settings for connecting multiple cam profiles to each other.

Note:

The multi-axis functions for the ACP10_MC library are also operated the same way as the function blocks that we are already familiar with. This means that the functions are also integrated uniformly in the automatic sequence of an application program.

Detailed information about the individual function blocks can be found in the Automation Studio online help.

8 TM441 ASiM Multi-Axis Functions

Page 9: Tm441 Asim Multi-Axis Functions

Electronic Gears

3. ELECTRONIC GEARS

As we know already, an electronic gear is used to establish a linear relationship from the slave position to the master signal with a specific factor ("gear ratio").

Fig. 8 Electronic gear

This function is often applied for simple conveyor belts. Imagine that a product must be transferred from one conveyor to another. In order for the transfer to work, the speed of both belts must be synchronized.

3.1 Simple link

The functions in the ACP10_MC library for controlling the electronic gear are quite easy to use.

Note:

Unlike the previous function blocks, the functions for linking axis objects require the axis reference for master and slave. Therefore, the ncaccess function must now be used to determine the reference of both axis objects. As usual, the NC objects defined in the axis mapping (real or virtual axis) can be accessed.

Fig. 9: NC objects in the axis mapping

You must go through the same familiar steps to prepare the axes for movement.

ASiM Multi-Axis Functions TM441 9

Page 10: Tm441 Asim Multi-Axis Functions

Electronic Gears

MC_GearIn function block

This function block is used to start a linear link.

Fig. 10: MC_GearIn function block

MC_GearIn input parameters:

Master: Specifies the master axis reference.

Slave: Specifies the slave axis reference.

Execute: Start link with positive edge on the Execute input.

RatioNumerator/RatioDenominator Gear ratio of the link. For example: 3/1 Slave moves 3 times faster than the master.

Acceleration/Deceleration: Slave limit values when linking and changing the gear ratio.

MasterParID: A ParID can be used as master signal instead of the master set position.

MasterParIDMaxVelocity: When using a MasterParID, this parameter specifies the maximum speed of this ParID value, which has effect when entering the gear and when changing the gear ratio.

10 TM441 ASiM Multi-Axis Functions

Page 11: Tm441 Asim Multi-Axis Functions

Electronic Gears

Notes:

The state of the master axis is not affected by the link. (DiscreteMotion, Continuous Motion, etc.).

Link parameters cannot be changed if the master moves backwards in the active link.

The link cannot be started if the master is moving backwards!

MC_GearOut function block

This function block is used to terminate a linear link.

Fig. 11: MC_GearOut function block

Note:

The slave changes to the Synchronized Motion state when the link is started successfully. When the link is terminated using MC_GearOut the drive maintains its current speed and changes to the Continuous Motion state. Therefore, the MC_Stop function block would also have to be used to stop movement of the slave axis. (see diagram of states)

ASiM Multi-Axis Functions TM441 11

Page 12: Tm441 Asim Multi-Axis Functions

Electronic Gears

Task: "Electronic gears"

Using the function blocks MC_GearIn and MC_GearOut to start or terminate the linear link.

Preparations:

Make sure that the ACP10_MC library is present in the project. Depedning on availability, either real or virtual axes can be used for linking. It is a good idea to create a separate task for controlling the master axis and one for controlling the slave axis.

Tips for implementation

Task for controlling the master axis:

As discussed earlier, the master axis is not affected by the link. It merely provides the master signal (the set position by default). Therefore, the simple positioning routines can be used to control the master axis. The "basic" task from the ACP10_MC sample project is provided for this. This task contains all of the routines for preparing the drive, as well as the basic positioning commands.

To save some time, you can implement this task in your project for controlling the master axis.

Task for controlling the slave axis:

In addition to the functions for preparing the drive (& any positioning functions, etc., as needed) the function blocks are required here for axis linking.

The axis references for the linking blocks must be determined in the Init subprogram of the task - e.g.:

(* INIT Subprogram *)

(* Determine master reference *)status_ma:= ncaccess(ncACP10MAN,ADR(’Axis1’),ADR(Axis1Obj));

(* Determine slave reference *)status_sl:= ncaccess(ncACP10MAN,ADR(’Axis2’),ADR(Axis2Obj));...

12 TM441 ASiM Multi-Axis Functions

Page 13: Tm441 Asim Multi-Axis Functions

Electronic Gears

All of the necessary functions for this test can be placed in the cyclicpart of the task. The assignment of the axis reference can be done in the task using the usual procedure – e.g.:

(* Cyclic program section *)

(* Function block calls *)

(* Preparing drive *) MC_Power_0.Axis:= Axis2Obj; MC_Power_0();

(* Reference drive *) MC_Home_0.Axis:= Axis1Obj; MC_Home_0();...

(* Gearing Functions *) MC_GearIn_0.Master:= Axis1Obj; MC_GearIn_0.Slave:= Axis2Obj; MC_GearIn_0();

MC_GearOut.Slave:= Axis2Obj; MC_GearOut();

Perform the preparatory settings for controlling both axis objects and then download the project.

Testing the functions:

Operate the tasks using the watch window.

The axes must first be prepared for movement actions using the known steps:

Switch on the controller

Homing procedure

The MC_ReadAxisError function block can be used to acknowledge any axis errors that occur (e.g. due to faulty configuration).

The linking function can now be tested. To do this, perform a movement using the master axis (e.g. a continuous movement or the "Jog" routine in the "basic" task).

Set the input parameter for MC_GearIn and activate the function block("Execute").

Test different settings for MC_GearIn and the MC_GearOut function block.

Be sure to also observe the change in drive status!

ASiM Multi-Axis Functions TM441 13

Page 14: Tm441 Asim Multi-Axis Functions

Electronic Gears

Notes:

The master set position is used by default (FB input: Master). Depending on the application, other master signals (e.g. actual encoder position, etc.) can also be specified on the FB input MasterParID.

These function blocks used are integrated in a complete function sequence in the "gear" task of the ACP10_MC sample project. This task can then be added to the project (using the known methods) for controlling an axis (virtual or real axis). Additional variables are provided in the structure ("gAxisSlave") for operating the linking function.

14 TM441 ASiM Multi-Axis Functions

Page 15: Tm441 Asim Multi-Axis Functions

Electronic Gears

3.1.1 Drive link with position reference

The MC_GearInPos function block adds functionality to the MC_GearIn function block. Some applications require a defined position for the start of the drive link.

Fig. 12 Relay

MC_GearInPos is used to define both the master and the slave position for the start of the electronic gear. This makes it possible to achieve a defined "position" of the axes relative to each other for the start of the drive link.

This function can be used as follows:

A conveyor belt with product receptors, whereby the distance between two receptors is equal to one period, will accelerate from standstill to the speed of a second, preliminary belt supplying the product.In this case, the product must always be transferred at a defined position. When starting the process, MC_GearInPos makes sure that the slave position and speed is in the correct reference to the master at the defined master position.

Fig. 13: Master and slave in undefined position to one another

Fig. 14: Master and slave after linking at the defined position

ASiM Multi-Axis Functions TM441 15

Page 16: Tm441 Asim Multi-Axis Functions

Electronic Gears

Note:

As described already, values for the position period and factor can be entered for the PLCopen_ModPos="<Period>,<Factor>" entry in the axis mapping table to adjust the position value:

Fig. 15: Advanced setting for position period and factor in the axis mapping

MC_GearInPos function block

This function block is used to start a linear link at a defined master and slave position.

––

Fig. 16: MC_GearInPos function block Smooth entry into the link

The image at top right displays this procedure for different starting situations (random position of the slave axis).

The entry movement of the slave drive is started when MasterSyncPosition- MasterStartDistance has been reached.

At this point, the entry movement smoothly enters the corresponding gear ratio.

16 TM441 ASiM Multi-Axis Functions

Page 17: Tm441 Asim Multi-Axis Functions

Electronic Gears

MC_GearInPos input parameters

Master/Slave: Specifies the master axis reference and slave axis reference.

Execute: Start link with positive edge on the Execute input.

RatioNumerator/RatioDenominator: Gear ratio of the link. For example: 3/1 Slave moves 3 times faster than the master.

MasterSyncPosition/SlaveSyncPosition: Master and slave position at which the axes run in-sync.

SyncMode: see Fig. 17, Fig. 19 and Fig. 20.

MasterStartDistance: The distance within which the system has to perform a "smooth" entry into the gear link ("compensation movement of the slave").

Velocity/Acceleration: Maximum speed or acceleration for the slave when entering the link.

MasterParID: A ParID can be used as master signal instead of the master set position.

MasterParIDMaxVelocity: When using a MasterParID, this parameter specifies the maximum speed of this ParID value, which is valid when entering the gear and when changing the gear ratio.

Notes:

An active link made by the MC_GearInPos function block cannot be interrupted by an additional function call for the same or another instance (i.e. the gear ratio cannot be changed either).

The Slave must be in standstill when starting the link (MC_GearIn andMC_GearInPos)!

The link cannot be started if the master is moving backwards!

The master axis is not affected at all by these actions and can therefore execute basic movements as usual.

ASiM Multi-Axis Functions TM441 17

Page 18: Tm441 Asim Multi-Axis Functions

Electronic Gears

Synchronization modes

A mode parameter can also be used to define the position period, in which the slave drive should move for entry into the gear. The point where the drives are linked is based on the mode and the current position of the slave axis (current, last or next period). This allows e.g. a slave axiscompensation movement to the corresponding connection point to be performed one period before or one period after the current position period:

Fig. 17 CATCH_UP and SLOW_DOWN diagram

As shown in the image above, CATCH_UP always initiates a movement to the next drive linking point. SLOW_DOWN always initiates a movement to the preceding drive linking point. Depending on the current position of the slave, the CATCH_UP mode might make it necessary to change to the next period (see above). It is also possible to change to the preceding period for the SLOW_DOWN mode.

Based on our conveyor belt example (see below), the slave would move forward when linking in CATCH_UP mode and first backwards then forward in SLOW_DOWN mode.

Fig. 18: Conveyor belt example

Fig. 19 WITHIN_PERIOD diagram

The image above shows the behavior for the WITHIN_PERIOD mode for two different starting situations. In these cases, the slave always moves to the starting point within the current period.

18 TM441 ASiM Multi-Axis Functions

Page 19: Tm441 Asim Multi-Axis Functions

Electronic Gears

The slave would always move backwards when linking in the WITHIN_PERIOD mode because the SlaveSyncPosition is at the beginning of the period in our conveyor belt example.

Fig. 20 SHORTEST_WAY diagram

When in the SHORTEST_WAY mode, the slave always moves to the next closest starting point. This is illustrated in the image above for two different starting situations. Depending on the situation, it could benecessary to change to the preceding (as shown above) or the next period.

What happens when the starting position for the master compensation has already been exceeded? When using periodic axes, this starting point also recurs in the next period. Otherwise, the function block returns an Error.

Caution:

The SyncMode input must be configured when using a periodic axis. With a non periodic axis, it is ignored.

Task: "Electronic gear with position reference"

The MC_GearInPos function block can now be tested the same way as in the previous example.

Integrate this function block and operate it using the Watch function. Start the function block while the slave axis is idle. Observe how the slave behaves.

ASiM Multi-Axis Functions TM441 19

Page 20: Tm441 Asim Multi-Axis Functions

Electronic Gears

3.2 Dynamic phase shift

When a link is active, MC_Phasing will create a phase shift between the master and slave axis. The master position sent to the slave is shifted with respect to its actual physical position.

The phase shift is only "seen" by the slave, the master doesn't notice. The phase shift remains in place until another phasing command changes it.

MC_Phasing can be used if a link has already been started with the FBsMC_GearIn, MC_GearInPos or MC_CamIn.

How is this done?

The position for the slave is based on the "position" of the linked master and the drive link relationship (linear or via a cam profile):

Fig. 21 Master/Slave drive link relationship

The MC_Phasing function block now generates a value for an additive element or additive master axis. This element is added to the actual master position. The resulting value is then applied to the master side of the drive link relationship.

20 TM441 ASiM Multi-Axis Functions

Page 21: Tm441 Asim Multi-Axis Functions

Electronic Gears

The specified final value for the additive axis is created by a corresponding speed increase after the function block is activated. This prevents any position jumps from occurring (for the slave) during the procedure. The master is not affected by or does not "know about" this action at all.

Fig. 22: Targeted phase shift caused by the MC_Phasing function block

This results in a changed position setting for the linked slave. This means that a specific phase shift can be implemented. Generation of the value of the additive master axis is done smoothly.

MC_Phasing can be set to implement product separation. After cutting the cardboard, the sheets are right next to each other on a conveyor belt. They are then transferred to a second conveyor belt. A phase shift can be executed for the second belt once it has been reached by a sheet. This creates a gap between the products, which is required for further processing.

ASiM Multi-Axis Functions TM441 21

Page 22: Tm441 Asim Multi-Axis Functions

Electronic Gears

MC_Phasing function block

Fig. 23: MC_Phasing function block

Master/Slave: Specifies the master axis reference and slave axis reference.

Execute: Phase shift is started at a rising edge.

PhaseShift: Phase shift [master's units].

Velocity/Acceleration: Maximum speed / acceleration for achieving the phase shift [units/sec].

Note:

The resulting slave position is directly dependent on the link relationship. For example, the gear ratio for an electronic gear has the following effect on the result:

Gear ratio = 1:5 (Master:Slave)Master-side shift: 2,000 units (additive master axis) Slave-side shift: 10,000 units

22 TM441 ASiM Multi-Axis Functions

Page 23: Tm441 Asim Multi-Axis Functions

Electronic Gears

Task: "Phase shift"

Use the MC_Phasing function block. Go through all of the steps up to the point of activating the link and perform the phase shift for different settings.

Note:

The phase shift is additive to the current movement. The MC_Phasing function block can also be tested while the linked axes are idle (idle master).

ASiM Multi-Axis Functions TM441 23

Page 24: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

4. ELECTRONIC CAM PROFILES

To implement dynamic, non-linear movements, ACOPOS offers the option of using electronic cam profiles for axis linking. These cam profiles can be created by the user.

Fig. 24 Electronic cam profiles

Electronic cam profiles can be used in many different ways.

Example: Cam profiles can be used quite effectively for spring winding machines. Separate axes are used to control the feed, curvature and slope respectively. This makes it possible to create any shape needed (slopes, cones, etc.)

4.1 Introduction

As we saw in the previous section, the position relationship for drive links can be clearly illustrated in a diagram.

In the cam diagram, we see the master position value in the horizontal direction and the slave position in the vertical direction. The cam profile now assigns a respective slave position value for each master position value within a defined range (cam profile master period / cam master period). The slave drive must follow this profile while the drives are actively linked.

24 TM441 ASiM Multi-Axis Functions

Page 25: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Fig. 25 Cam profile as position relationship

The master position is converted to a corresponding slave position via the cam profile. This allows the master to move in both directions. The slave drive is "connected" to the master via the cam profile.

That means that the speed and acceleration values for the slave drive are also taken from the speed and acceleration of the master in connection with the curve characteristic.

Therefore, the entire course of the cam profile must be checked to make sure the slave drive can accept any occurring speed and acceleration values.

Example:

Let's assume the master signal changes at a constant rate (e.g. uniform master axis movement, time as master, etc.).

Critical ranges (with maximum values for slave speed and acceleration) are represented in the cam profile by maximum slope (-> speed as first derivative of the position) and the maximum slope change (-> acceleration/deceleration as second derivative of the position) due to the position comparison.

ASiM Multi-Axis Functions TM441 25

Page 26: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

4.2 Creating cam profiles

Automation Studio supports the creation of cam profiles with a powerful cam profile editor. A cam profile can be edited in the cam profile editor after being inserted to the project.

Cam profiles are created as NC software objects in Automation Studio.The corresponding object must first be inserted to the project before a new cam profile can be created.

Automation Studio 2.x

After selecting the menu item "Insert – New Object" an Advanced Objectis selected in the subsequent dialog box.

Fig. 26 Inserting an advanced object

After confirming this selection by pressing the Next button, the respective NC data object can then be selected in the next window. For our example, let's select the Type: NC Cam Profile from the Resource: ACP10: Cam Profile.

26 TM441 ASiM Multi-Axis Functions

Page 27: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

The cam profile name can be entered in the "Name" field:

Fig. 27 Inserting a cam profile

The new NC software object is created in the project after confirming the entry with the Finish button.

Fig. 28: Cam profile in the software tree

The cam profile editor is opened automatically after completing the action and we can start modeling the cam profile right away. At any point in the future, the cam profile can be opened for editing by double-clicking on the respective icon in the software tree.

ASiM Multi-Axis Functions TM441 27

Page 28: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Automation Studio 3

Fig. 25: Appending a new object

Select Motion from the Categories section of the dialog box that appears after selecting Append Object from the Insert menu item.Additionally, a new cam profile can be selected in the right half of the dialog box by selecting New NC Cam Profile from the templates.

Fig. 29: Selecting a new cam profile in the Motion area

After confirming your selection with the Next button, a new dialog box appears in which the object name and a description can be entered for the cam profile. The corresponding NC data object still has to be selected. In our case, we will select the Subtype: ACP10 Cam Profile.

Fig. 30: Entering the name, a description and selecting the ACP10 data object

28 TM441 ASiM Multi-Axis Functions

Page 29: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Fig. 28: Object assignment

We will assign the new cam profile to the active CPU by selecting "to activeCPU".

The cam profile is then added to the Logical View after confirming the selection with the Finish button.

Fig. 29: The inserted cam profile in the logical view

The cam profile can be opened at anytime in the Logical View and edited in the cam profile editor by double-clicking the corresponding icon.

ASiM Multi-Axis Functions TM441 29

Page 30: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

4.2.1 Editing a cam profile

The cam profile editor in Automation Studio is a full-featured tool that helps us create and adapt very clear and exact cam profiles for the respective linking requirements. A number of settings are available for doing this.

The Automation Studio help system contains detailed user information about inserting the NC software object "cam profile" (as discussed in the section above), creating the cam profile as well as information about the individual cam profile formats.

Fig. 31: Automation Studio Online Help

The following sections will explain the steps for editing a cam profile.

30 TM441 ASiM Multi-Axis Functions

Page 31: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

An "empty" area in the editor is displayed for the cam profile after creating a new cam profile object. The editor window is divided into three areas:

Fig. 32 Cam profile editor

Display of the cam profile (1, top) as a function of the slave position according to the master position. Two diagrams derived from the curve characteristic (speed, acceleration, etc.) are displayed in the lower half of the window.

A list (2, bottom left) for defining the fixed point of the curve characteristic

A list (3, bottom right) for defining synchronous sections.

It is recommended to adjust the diagram properties before inserting fixed points and synchronous sections. A detailed description of the possible properties and settings can be found in the Automation Studio help files.

ASiM Multi-Axis Functions TM441 31

Page 32: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

The settings include:

General properties

Color settings

Extensions

Display options Labels and

formulas Characteristic values

for curves Notations in the

diagram

We now have the possibility of defining fixed points on the curve as well as synchronous sections (linear sections on the curve characteristic) to create a cam profile. The connections for a complete cam profile are made automatically by the cam profile editor using interpolation curves:

Fig. 33 Construction of a cam profile

The figure above shows an example of a cam profile. A total of four fixed points and one synchronous section (with linear gradient) were defined. These definitions are automatically connected by the cam profile editor to create a complete cam profile: When this happens, interpolation curvesare also calculated and displayed. The user can also define the shape of the interpolation curves as we will see later.

32 TM441 ASiM Multi-Axis Functions

Page 33: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

■ Fixed points

A fixed point is a point in the cam profile for which the position of the slave axis is determined by the user, at a specific position of the master axis.

There are four ways to insert a fixed point:

via the menu, by selecting Insert/Fixpoint

via the shortcut menu in the diagram with Insert Fixpoint

by selecting the Insert Fixpunkt button in the diagram

in the fixed point table, workspace at the lower left (2)

Fig. 34: The table in the lower left area of the workspace contains the list of existing fixed points.

The following values are used in the individual table columns:

Column label Meaning (for mathematical notation1 )

No. Consecutive number of fixed points in the table

s ma. Position of the fixed point on the master axis

s sl. Position of the fixed point on the slave axis

s´ sl. First derivative of the cam profile function on the fixed point( current gear ratio)

s´´ sl. Second derivative of the cam profile function on the fixed point

ASiM Multi-Axis Functions TM441 33

Page 34: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Note:

The notation indicates whether position or time units should be used in the diagrams on the abscissa (i.e. for the master axis). The use of position is labeled as "mathematic notation". The use of time is labeled as "physical notation" (comparable to

constant master speed). Therefore, in physical notation the first derivative in the fixed point is equal to the speed and the second derivative in the fixed point is equal to the acceleration of the slave axis. The cam profile represents the path-time diagram of the slave axis.

Page 35: Tm441 Asim Multi-Axis Functions

34 TM441 ASiM Multi-Axis Functions

Page 36: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

■ Synchronous sections

A synchronous section is a section in the cam profile, where the user specifies a linear course of master and slave position

A constant master axis speed within a synchronous section also results in a constant slave movement. In other words, the cam profile is linear (comparable to an electronic gear).

There are also four ways to insert a synchronous section:

via the menu by selecting Insert/Synchronous Section

via the shortcut menu in the diagram with Insert SynchronousSection

by selecting the "Insert Synchronous Section" button in the diagram

in the synchronous section table, in the workspace at the lower right (3)

Fig. 35: Table in the lower left part of the list of existing synchronous sections

The following values are used in the individual table columns:

Column label Meaning (for mathematical notation1 )

No. Consecutive number of synchronous sections in the table

s ma. 1Position of the synchronous section starting point on the master axis

s sl. 1Position of the synchronous section starting point on the slave axis

s ma. 2.Position of the synchronous section end point on the master axis

s sl. 2Position of the synchronous section end point on the slave axis

GradientSlope of the synchronous section or gear ratio (produced from the above definitions)

ASiM Multi-Axis Functions TM441 35

Page 37: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Note:

When using physical notation (master axis = time) the master position entries change accordingly to points in time. The gradient of the synchronous section is equal to the speed of the slave axis in this range. ( time passes "evenly")

36 TM441 ASiM Multi-Axis Functions

Page 38: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

■ Interpolation curves

The function section of a cam profile calculated by the cam profile editor and located between two definitions (fixed points, synchronous sections) is called an interpolation curve.

After each new fixed point or synchronous section is entered, interpolation curves are immediately created in between, calculated and displayed. The cam profile editor makes sure that an interpolation curve lies exactly between two defined components.

Likewise, an interpolation curve is also deleted if a fixed point or a synchronous section is deleted.

Note:

The calculation ensures that the cam profile function and its first derivative are constant at the transition points (e.g. the curves do not contain any jumps at the end points).

Various curve types can be selected for the individual interpolation curvesto more precisely design the curve characteristic between the defined areas (fixed points and synchronous sections). These provide different predefined shapes according to the type. Specific curve characteristics are supported by type-specific settings (turning points, joining points, etc.).

The corresponding dialog box is opened by right-clicking on the interpolation curve. The curve section can be edited after selecting Curve Properties.

ASiM Multi-Axis Functions TM441 37

Page 39: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Fig. 36 Curve properties dialog box

Detailed information about the possible settings can be found in theAutomation Studio Online Help files under Interpolation Curves.

38 TM441 ASiM Multi-Axis Functions

Page 40: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Task: "Creating cam profiles"

Insert the NC software object cam profile to your project and edit it in the cam profile editor. To do this, use the option for definition of fixed points and synchronous sections.

e.g. The image below shows a movement profile in which the slave axis reaches its maximum position in the right quarter of the profile.

When creating the cam profile, make sure that the profile has the same slope at the start and end point. This characteristic is important for the following drive link applications.

Supplement:

Transfer the project with the new cam profile to the controller and activate monitor mode. The cam profile should now appear in the project software tree as a data object on the controller. The necessary cam profiles for the coupling application must be transferred to the ACOPOS servo drive using the MC_CamTableSelect function block.

ASiM Multi-Axis Functions TM441 39

Page 41: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

4.3 Linking functions

A cam profile must be transferred from the controller to the slave ACOPOSbefore it can be used.

The following section will explain the corresponding routines and procedures needed to do this.

4.3.1 Preparing cam profiles

The MC_CamTableSelect function block is required for transferring a cam profile object to the linked slave.When this function block is called, the corresponding cam profile (input parameter: CamTable) is transferred and an ID is returned for further use with the link function.

Additionally, the pre-setting for processing the cam profile one time orcyclically is made on this function block.Thus, it is possible to allow the cam profile to constantly repeat itself:

Fig. 37 Cyclic attachment of cam profiles to each other

This results in a continuous positioning path for the slave.

40 TM441 ASiM Multi-Axis Functions

Page 42: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

MC_CamTableSelect function block

This function block is used for downloading and configuring a cam profile on the link slave.

Fig. 38: MC_CamTableSelect function block

Master: Specifies the master axis reference.

Slave: Specifies the slave axis reference.

CamTable: Name of the desired cam profile.

Execute: Activate function block with positive edge on the Execute input.

Periodic: Selection between one-time or cyclic processing of the cam profile.mcNON_PERIODIC ... 0 mcPERIODIC ....... 1

Caution:

Smooth entry must be guaranteed when starting a cam profile link. When connecting cam profiles consecutively, the beginning of the following cam profile is set seamlessly to the end of the preceding cam profile.You must first ensure that the speed and acceleration of the transition is constant (no bend in the positioning path).

The following sections will provide some examples of how to do this.

ASiM Multi-Axis Functions TM441 41

Page 43: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

4.3.2 Linking cam profiles

A cam profile on the ACOPOS is linked using the MC_CamIn function block.

Fig. 39: MC_CamIN function block

Master: Specifies the master axis reference.

Slave: Specifies the slave axis reference.

Execute: Start link with positive edge on the Execute input.

MasterOffset: Offset on the master side. SlaveOffset: Offset on

the slave side. MasterScaling/SlaveScaling: Master / slave-

side scaling of thecam profile.

StartMode: Start Mode based on the offset.

CamTableID: Cam profile ID of the desired cam profile. The MC_CamTableSelect function block provides this after the cam profile has been successfully downloaded.

MasterParID: A ParID can be used as master signal instead of the master set position.

42 TM441 ASiM Multi-Axis Functions

Page 44: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Possibilities for starting the link:

Similar to the MC_GearInPos function block, the exact start of the link can also be defined here in relation to the master and slave position. The two parameters Offset and StartMode are available for this definition. (Note: The master start position returns periodically (<period>)).There are three different variations (start modes) for defining the link start:

Absolute from the zero point of the position period"Zero point of the position period + Offset" m cA B S O L U T E

Fig. 40: Link start in the mcAbsolute mode

The slave calculates its start position by adding the slave offset to the start of the period. It moves to this position and waits there until the master has reached its master offset, also started from theperiod beginning. The slave links with the master axis as soon as this has been reached.

Relative to the current position"Current axis position + Offset" mcRELATIVE

Fig. 41: Link start in the mcRelative mode

ASiM Multi-Axis Functions TM441 43

Page 45: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

The principle is the same as the mcABSOLUTE start mode, with the exception that the start positions for slave and master are calculated based on their actual positions and take the respective offset into consideration.

Directly from the current master / slave position m c D I R E C T

Fig. 42: Link start in the mcDirect mode

The cam profile is started right at the current master and slave position. The MasterOffset specifies where within the cam profile the link is started. The SlaveOffset is not used in this start mode.

Note:

The master axis must be at standstill in the mcDIRECT start mode to link the slave at the correct position!

Note:

It is possible that the master will pass the start position for linking a few times because the slave requires a certain amount of time to reach its start position. Once the slave has reached its start position, the link is started after the next master start position has been reached.

44 TM441 ASiM Multi-Axis Functions

Page 46: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Scaling the cam profile

A cam profile used for linking can be "stretched" on both the master and slave side. The input parameters for the multiplication factors are included in the MC_CamIn function block.

This expands the length of the master and slave cam profile by the corresponding factor.

Example: Cam profile scaling

Cam profiles are often created with a master-side dimension of one unit (cam profile master period = 1) and a slave-side dimension also of one unit (cam profile slave period = 1). This makes it rather easy to "stretch" a cam profile to match the actual process:

For example, let's assume that the cam profile (master period=1, slave period=1) should be set in a way so that exactly one cut is made for each master axis revolution. Therefore, the multiplication factor for the master-side must be set to the same number of units for a master revolution.

When using a linear cam profile (comparable to electronic gear), the"gear ratio" can be determined using the multiplication factors.

The MC_CamOut function block can be used to terminate an active link again.

Fig. 43: MC_CamOut function block

ASiM Multi-Axis Functions TM441 45

Page 47: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Task:

Set up the link for the cam profile created earlier using the known method. The cam profile should be processed cyclically.

Preparations:

Add the functions MC_CamTableSelect (for preparing and transferring the cam profile), and MC_CamIn (for starting the cam profile link) to the cyclic program part for the slave drive. Make the necessary fixed settings for the function blocks – e.g.:

(* Cyclic program section *)

(* Function block calls *)...(* Camming functions *) MC_CamTableSelect_0.Master:= Axis1Obj; MC_CamTableSelect_0.Slave:= Axis2Obj; MC_CamTableSelect_0.Periodic:= mcPERIODIC; MC_CamTableSelect_0.CamTable:= ’profile’; MC_CamTableSelect_0();

When the function is executed, the defined cam profile object is prepared for cyclic processing.

The link can be started using MC_CamIn after successfully downloading the cam profile.

MC_CamIn_0.Master:= Axis1Obj; MC_CamIn_0.Slave:= Axis2Obj; MC_CamIn_0.StartMode:= mcRELATIVE;MC_CamIn_0.CamTableID:= MC_CamTableSelect_0.CamTableID; MC_CamIn_0();

MC_CamOut_0.Slave:= Axis2Obj; MC_CamOut_0();

The "Relative" start mode is used. Therefore, the offset values can be used to determine the actual starting point of the current positions (master/slave).

Use the MC_CamIn function block for linking in to the cam profile andMC_CamOut for linking out of the cam profile. Pay attention to the axis status!

Try to also link the cam profiles using different offset values. Observe the effects – the relationships can be seen clearly by observing the positions at a slower master speed.

Operate the functions using the watch window.

46 TM441 ASiM Multi-Axis Functions

Page 48: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Caution:

In the programming example above, the cam profile ID returned from MC_CamTableSelect is transferred directly to the MC_CamIn function:

MC_CamIn.CamTableID:= MC_CamTableSelect_0.CamTableID;

For this reason, you should leave the "Execute" input in the MC_CamTableSelect function block set to "TRUE" because otherwise this value is reset to zero.

In an "independent" application task, you should of course make sure that the cam profile IDs are correctly filed when preparing multiple cam profiles. The correct ID must always be provided on the respective function block input when linking.

The scaling values (master side and slave side scaling of the cam profile) must be set to at least the value 1 for the linkingfactors!

Note:

These function blocks used are integrated in a complete function sequence in the "cam" task of the ACP10_MC sample project. This task can be added to the project for controlling an axis (virtual or real axis). Additional variables are provided in the structure ("gAxisSlave") for operating the linking function. The cam profile object is transferred after the command is given to start the cam profile link. The actual link is then made when the CamTableID is received.

ASiM Multi-Axis Functions TM441 47

Page 49: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

4.3.3 Changing cam profiles

When a cam profile link is active, the cam profile can be changed by calling the MC_CamIn function block again.

The period of the active cam profile is ended and the new cam profile is attached after defining a new CamTableID and a positive edge on the Execute input. The end point of the first cam profile is the start point of the second cam profile.

Neither the master and slave offset nor the start mode have any effect on the cam profile change.

Fig. 44 Cam profile transition

Caution:

You must also make sure in this case that the transition between cam profiles is constant in order to avoid bends in the curve.

The required cam profiles can be attached to each other in a convenient sequence after being transferred to the corresponding ACOPOS (one time or cyclically). The routines for changing the cam profile must be performed in the application program at the respective moments.

48 TM441 ASiM Multi-Axis Functions

Page 50: Tm441 Asim Multi-Axis Functions

Electronic Cam Profiles

Task: "Cam profile change"

We can now test this function without having to make any additional preparations. Link the cam profile as in the previous example.

Execute the MC_CamIn function again, but now change the values for the cam profile scaling. In principle, this procedure is carried out the same way as linking a new cam profile.

ASiM Multi-Axis Functions TM441 49

Page 51: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5. CAM PROFILE AUTOMAT

The cam profile automat allows event-controlled linking of electronic cam profiles.The following example provides a step-by-step clarification of the cam profile automat functionality.

5.1 Introduction

Let's first take a look at the following encapsulation machine:

Fig. 45: Encapsulation machine: Picture1: Slave starting point, Picture2: Encapsulation

The product transporter acts as master axis. The slave axis closes each plastic container with a crown cap.A high-speed digital input (trigger) detects if a product is present. If no product is present, then the slave remains in standstill. Otherwise the container is capped with a crown cap. Let's consider how this example could be implemented using the MC_CamIn function block.First we will need 2 cam profiles:

Cam profile 1, which keeps the slave in standstill when a container is not present.

Fig. 46: Second cam profile for keeping the slave in standstill

50 TM441 ASiM Multi-Axis Functions

Page 52: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Cam profile 2 for the encapsulation procedure:

Fig. 47: Second cam profile for encapsulating

First, the two cam profiles must be transferred to the ACOPOS. A control program must then be used to check if a trigger signal has been received.

If so, then the cam profile 2 must be linked using the MC_CamInfunction block.

If there is no trigger signal, then cam profile 1 should be linked via the MC_CamIn function block (by changing the cam profile ID on the CamTableID input).

A much more simple and efficient method would be if the ACOPOS could decide on its own which cam profile should be processed, based on the current process situation.This would simplify the control program and enable much faster reaction times.

The cam profile automat was created to meet these demands. It is initialized and the parameters are set on the corresponding ACOPOS slave drive where it can then be processed independently. This keeps the CPU load comparably low, even when a large number of axes are in use. The running process results in minimal reaction times. There are also many ways to intervene in the running automats.

In the following section, we will take a step-by-step look at the structure and operation of a cam profile automat using the example shown earlier.

ASiM Multi-Axis Functions TM441 51

Page 53: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.2 Structure and functionality

The example above can be structured in the cam profile automat as follows.

Fig. 48: Cam profile automat structure for the encapsulation machine

Automat states

The two cam profiles are now each packed in a specific state. These are called automat states.These result in State1, in which the slave should not perform a movement because a product is not present and State2, in which the encapsulation process should be executed.State0 is optional and can be used as the initial state or standby state. No cam profile can be assigned to this state.

Change events:

The change event is used to determine which event should cause a change of state (e.g. trigger event ncTRIGGER, or reaching the end of the state ncST_END, etc). When the change should be applied must also be determined. For example, this can take place at the end of the state (ncST_END) or immediately (ncAT_ONCE) when the event occurs. The subsequent state that should follow is also defined.This provides a sequence of automat states.Two change events were defined for each of the two states in our example.

Cam profile automat sequence for the encapsulation machine:

The encapsulation machine changes to the State1 after the event- controlled start (start at a specific master position) in the State0. The slave does not perform any movements in the State1. Therefore, the first container must be excluded when starting the machine. If a trigger signal (ncTRIGGER) is detected during processing of State1, then the machine changes to State2 at the end of State1 (ncST_END), at which point the encapsulation process is then executed.A container is capped when State2 is executed. This state is repeated if another trigger signal occurs in this state.

52 TM441 ASiM Multi-Axis Functions

Page 54: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

If a product is not present or if the State2 runs completely to the end (ncST_END) without a trigger signal having occurred, then the machine must switch to State1 so that the slave does not perform a movement. The automat remains in State1 until a new trigger signal is received. When a new trigger signal is received, the automat is switched back to State2 and the encapsulation process is continued.

Fig. 49: Encapsulation machine

This makes it possible to consecutively arrange a wide variety of cam profiles in a manner similar to the steps (states) of a step sequencer. This further enables the implementation of flexible machine processes.

Once the automat parameters have been set, the automat can then be started in any state and runs through the individual states according to the defined change events and subsequent states.

Fig. 50: Sequence of automat states

ASiM Multi-Axis Functions TM441 53

Page 55: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.3 Implementing the cam profile automat

The parameters for the cam profile automat can be set in two ways…

…using corresponding function blocks in the ACP10_MC library for the cam profile automat. The individual function blocks are handled exactly the same as the function blocks which have been used up to now.

Fig. 51: B&R-specific function blocks for cam profile automats

…using the MC_AUTDATA_TYP data structure provided in the ACP10_MC library. This data structure contains all of the cam profile automat parameters in structured form. A variable with this type can be created in the application program and used to configure the automat.

Fig. 52: MC_AUTDATA_TYP data structure

The following steps must be taken to implement a cam profile automat:

54 TM441 ASiM Multi-Axis Functions

Page 56: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Define global parameters for the automat (master or slave axis, initial state, etc.) via the data structure MC_AUTDATA_TYP>.<Parameter> or using the MC_BR_InitAutPar function block.

Download all of the cam profiles to the ACOPOS that are used in the automat. The MC_BR_DownloadCamProfObj function block can be used to do this.

The automat states must also be defined. A state can be defined using the MC_BR_InitAutState function block or the<MC_AUTDATA_TYP>.State[x] data structure.

Definition of the desired change event for each state. This can be done using the MC_BR_InitAutEvent function block or the<MC_AUTDATA_TYP>.State[x].Event[y]. data structure.

After the steps mentioned above have been performed, the automat can then be started and operated using the MC_BR_AutControl function block.

In the following section, we will take a special look at the automat parameter settings. The Automation Studio Online Help files can assist us by providing additional information about this.

ASiM Multi-Axis Functions TM441 55

Page 57: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.3.1 Defining global parameters

We use the term, "global parameters" to indicate that settings are principally valid for all automat states.The automat's global settings are made using the MC_BR_InitAutPar function block and the <MC_AUTDATA_TYP>.<Parameter> data structure.

These are the basis parameters:

The StartPosition, which allows changing from the basis state 0 to another state at the moment a specific master position is reached. To do this, a corresponding change event with the event type ncSTART must be defined for the basis state 0. Specification of the next parameter StartInterval is also of importance.

StartInterval: If the master position is already located behind the StartPosition, then the change event ncSTART is generated at the next multiple of the StartInterval.

These are the optional parameters:

MaxMasterVelocity: The slave uses the maximum master speed to calculate its compensation gear and to check if its limits have been exceeded. ( Warning from the ACOPOS)This parameter is only required when the compensation gear is being used.

StartState enables the automat to be started in any state. The automat starts in the basis state 0 if this parameter is not specified.

StartMaRelPos can be used to start in the initial state within the cam profile. StartMaRelPos specifies the master distance from the beginning of the cam profile. Any compensation gears present in the initial state are ignored.

Fig. 53: Representation of a direct start

MasterParID: A ParID can be used as master signal instead of the master axis set position.

56 TM441 ASiM Multi-Axis Functions

Page 58: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

AddMasterParID: The value of this ParID is added to the master position.

AddSlaveParID: The value of this ParID is added to the slave position calculated by the automat.

Fig. 54: Master – drive link relationship – additive element - slave

SalveFactorParID: The slave axis scaling is stretched by the value of this ParID. This factor applies to all states in the automat.

EventParID: ParID specification, which serves as event source in states where the event type ncPAR_ID is used. An event is detected if the value of this ParID changes from 0 to a value != 0.

SlaveLatchParID: The slave compensation distance begins at the latched value of this ParID in the compensation mode ncSL_LATCHPOS. The value of the ParID specified here (INT type) is latched when a trigger occurs (TRIGGER1, TRIGGER2).

ASiM Multi-Axis Functions TM441 57

Page 59: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.3.2 Cam profile download

A cam profile must first be transferred to the ACOPOS (slave drive) via the MC_BR_DownloadCamProfObj function block before it can be used in an automat state.

These are the input parameters:

The name of the cam profile is specified using DataObjectName.

The cam profile is stored on the ACOPOS using a specified index.The cam profile for the corresponding automat state can then be selected using this index.

The Periodic parameter can be used to determine whether the cam profile should be executed one time or periodically. Specificationof this parameter is only useful used in combination with the FB MC_CamIn. How a cam profile is processed on the cam profile automat is determined only by the change events. mcNON_PERIODIC ... 0mcPERIODIC ....... 1

Caution:

A cam profile is selected for an automat state when defining the states. This cannot be done until a cam profile with the corresponding index is available on the ACOPOS.

58 TM441 ASiM Multi-Axis Functions

Page 60: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.3.3 Defining the states

Up to 15 states can be defined (Index 0…14). One of the 15 states, the basis state (state 0), is an exception because there cannot be any cam profile or compensation gear assigned to it. Only the desired change events have to be defined for the basis state. In a way, it serves as a waiting step.

The following elements can be defined for the other automat states:

A cam profile, which must be transferred to the ACOPOS before it can be used. The cam profile can then be used in any state.

An optional compensation gear is available which is essentially an automatically calculated curve that compensates for position and speed differences and ensures a continuous cam profile connection during state changes. There are various modes for this (see 5.3 Compensation gears)

Thus, the curve characteristic is defined within a state:

Fig. 55: State with compensation and cam profile

Note:

It is possible to deactivate the compensation gear. If this is done, then the state only contains the cam profile.

If a compensation gear is used in an automat state, then it will always be processed before the corresponding cam profile in the state.

The MC_BR_InitAutState function block and<MC_AUTDATA_TYP>.State[x] data structure are used for configuring automat states.

These are the basis parameters (not including compensation):

ASiM Multi-Axis Functions TM441 59

Page 61: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

The state being handled is specified by StateIndex (1…14).

The CamprofileIndex input is used to select the cam profile for the state.

MasterFactor and SlaveFactor define the master and slave-side cam profile scaling.

Optional parameters when using the event ncCOUNT:

RepeatCounterInit is the initial value for the counter when using the ncCOUNT event type. The counter state is decremented by one each time the end of the state has been reached. The event is generated when the counter state zero is reached.

RepeatCounterSet can be used to change the current counter state on a running automat.

Optional parameters when using the compensation gear:

CompModeAs mentioned already, a compensation gear that compensates for speed and position differences can be used before the cam profile. Different compensation modes are available. The compensation gear can also be disabled.

These are the compensation gears available:ncOFF or leave input open ncONLYCOMP ncONLYCOMP_DIRECT ncWITH_CAM ncMA_LATCHPOS ncSL_LATCHPOSncSL_ABSncV_COMP_A_SL ncV_COMP_S_MA ncV_COMP_S_SL

MasterCompDistance is the configured master-side compensation distance.

SlaveCompDistance is the configured slave-side compensation distance.

The parameter ExtendedCompLimit is used to specify whether limit values are additionally defined for compensation.If the input is set to ncOFF, then the limit values in the axis' Init data module are valid.ncOFF or input not set.ncON

60 TM441 ASiM Multi-Axis Functions

Page 62: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

MinMasterCompDistance/MinSlaveCompDistance: These two parameters can be used to specify a minimum effective compensation distance for master and slave.

MaxSlaveCompDistance can be used to define the maximum effective compensation distance for the slave.

MinSlaveCompVelocity specifies the minimum slave speed for compensation.

MaxSlaveCompVelocity specifies the maximum slave speed for compensation.

MaxSlaveAccelComp1 offers the option to define a maximum slave acceleration value for the first half of the compensation.

MaxSlaveAccelComp2 offers the option to define a maximum slave acceleration value for the second half of the compensation.

SlaveCompJoltTime can be used to define the jolt time in the compensation.

The following parameter can optionally be used as master signal:

MasterParID: A ParID can be used as master signal instead of the master axis set position.

ASiM Multi-Axis Functions TM441 61

Page 63: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.3.4 Defining change events

A change event must be defined for a state to induce a state change. Up to5 change events (0…4) are available for each state.

A change event has the following properties:

Target state (NextState)

Event type (Type)

Event attribute (Attribute)

Target state (NextState)

The target state determines what state should be activated next. The current state can also be selected here for repetition.

Event type (Type)

The event type determines which event triggers a state change. This can be an "external" signal trigger or the end of the current cam profile, etc.

The following event types can be used:

The event "Master start position" (ncS_START) can be used to switch to another state in synchronization with the master position. A start position for the master must be determined as well as a start interval for periodic repetition of this event. The event is generated when the master passes the corresponding position (or the interval repetition).

The "Count" event ncCOUNT can be used to exit a cyclic repeating state. In principle, this means that a predefined value (RepeatCounterInit) is counted down each time the state is exited. If the counter reaches zero, the "count" event is triggered. This can be used to change to another state.

Without this change event, several states would be required and therefore "spent" for this sort of functionality.

62 TM441 ASiM Multi-Axis Functions

Page 64: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

The "Trigger" event (ncTRIGGER1 or ncTRIGGER2) offers the possibility to react to hardware signals from external sensors.

An ACOPOS parameter ID can be evaluated for the "ParID" event ("ncPAR_ID1...ncPAID_ID4"). The change event is generated for a value that is not equal to 0.

The "Signal" event (ncSIGNAL1…4) can be used to generate a change from within the application program.

The "State end" change event ncST_END is triggered as soon as the end of the state is reached.

The change event "negative state end" ncST_END+ ncNEGATIVE is triggered as soon as the starting point of the cam profile is reached via negative movement of the master. In this case, the subsequent state cannot have a compensation gear!

Furthermore, it is also possible to generate a change event from the logical "and" operation (ncAND_N2E) from two of the events mentioned above.

Event attribute (Attribute)

The event attribute specifies the time at which the state change (triggered by the corresponding event) occurs. (= action point) This means that the actual state change can be placed at the end of the cam profile when using a trigger as change event, which occurs according to circumstances in the cam profile characteristic.

The following event attributes are defined:

ncAT_ONCE : The change into the next state is executed immediately or at the beginning of the next sampling cycle.

ncST_END : The change into the next state is not executed before the end of the current state after compensation and cam profile.

ASiM Multi-Axis Functions TM441 63

Page 65: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Example: "Applying change events"

Fig. 56: Action point for various events and attributes

The image above illustrates how an event attribute works in relation to a change event. A linear curve characteristic is shown which traverses from left to right.

Let's assume that a previously defined change event "Trigger1" occurs within this state. The event attribute ncAT_ONCE is used to immediately change to a defined state (taking the sampling cycle into consideration).

As a result, the system places the subsequent curve characteristic exactly on the position of the actual trigger event. (trigger signal determined in regard to hardware, with increased timing resolution between sampling cycles). Therefore, inaccuracies do not occur in the positioning sequence due to the sampling cycle.When the "state end" event attribute ncST_END is used, this change is made at the end of the current cam profile.

64 TM441 ASiM Multi-Axis Functions

Page 66: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

The MC_BR_InitAutEvent function block and<MC_AUTDATA_TYP>.State[x].Event[y] structure component are used to determine the change event for the automat states and the sequence of the states.

5 change events can be defined for each of the 15 automat states (index 0 to 14). The corresponding indices are specified on the function block.

These are the basis parameters:

StateIndex: Specification of which state the event corresponds to.

EventIndex specifies the index for this event.

Type specifies which event type to react to.

Attribute determines at which point in time the event should become active. ("action point")

If the parameter Action is set to the value 1, then this event is also used for synchronized transfer of changed parameters in the automat. See the input parameter ParLock from the function block MC_BR_AutControl.

The parameter NextState specifies which state to change to when the event occurs (target state).

ASiM Multi-Axis Functions TM441 65

Page 67: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.3.5 Starting and controlling the cam profile automat

The function block MC_BR_AutControl is used to start and control the cam profile automat. If the automat is configured with the application structure, then this function block also handles initialization of the automat.

The MC_BR_AutControl function block is activated by an Enable input. Various commands for the cam profile automat can then be given via the controller inputs.

Parameters can also be changed when an automat is running (online parameter change). The control input ParLock can be used to block immediate application of changed parameters in the automat. This enables synchronized application of changed parameters in an ACOPOS cycle.ParLock…0: Lock disabled. In principle, changed parameters are applied the next time this state is entered.ParLock…1,2: Lock enabled. That means that the changed parameters have not yet been applied.ParLock…1 0: The changed parameters are applied in synchronization the next time a change event occurs. ParLock…2 0: The changed parameters are applied insynchronization the next time a change event occurs, which was configured with Action = 1.

Signal1…4 triggers a change event defined with ncSIGNAL1…4. The event is always generated on the signal1…4 - input at a positive edge.1…Set signal, 0…Reset signal.

The Start control input is used to start the cam profile automat. The function block must first have been enabled with the Enable input.

The cam profile automat can be stopped by setting the Stop input. After this occurs, the slave is then released from the automat. However, the calculation of the slave position and the event-state handling continues in the automat, as long as the master is in motion. (."Stand-by" automat mode)This calculated position is crucial for the automat restart.

66 TM441 ASiM Multi-Axis Functions

Page 68: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

When stopping the automat, the slave changes to standstill with the deceleration specified on the Deceleration input. If a value has not been specified here, then the limit value from the Init data module is used.

The slave axis can be returned to automat operation after a failure using the restart command. The automat is resumed at the current master and slave position. Take note that the current slaveposition does not have to match the current cam profile set position!

Fig. 57: Restarting after slave axis failure

If the automat is configured with the MC_AUTDATA_TYP data structure, then the initialization of the cam profile automat parameters defined in the application structure occurs via MC_BR_AutControl as follows:

The address of the application data structure is attached to theAdrAutData.

The parameter initialization is started with the control commandInitAutData.

ASiM Multi-Axis Functions TM441 67

Page 69: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Notes:

Preset cam profiles:These are already provided on the drive and do not have to be transferred to the ACOPOS.

CamProfileIndex = 0xFFFFThis predefined linear cam profile has a master and slave length of one unit and can be used as CamProfileIndex for the configuration of the automat. This can be used with multiplication factors to produce any m:n straight line.

CamProfileIndex = 0xFFFEThis predefined point cam profile can be used as CamProfileIndex for the configuration of the automat. This 0-cam profile can only be used in connection withcompensation modes (i.e. not in states with CompMode =ncOFF.The master and slave interval length of this predefined minimum cam profile is zero. However, the slope of the curve is not zero, but can be set using the multiplication factors. This enables the use of applications, which only require one compensation procedure without cam profile.

Online parameter change:As mentioned earlier, parameters of the cam profile automat can be changed during operation.The exceptions to this rule are the compensation mode (CompMode), event type (Type), event attribute (Attribute) and MasterParID.

Other methods of stopping the automat:Automat operation can be stopped at any time with a slave movement stop (MC_Stop). A change to the state index 255 can be used to exit the automat.

68 TM441 ASiM Multi-Axis Functions

Page 70: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Task: "Setting the parameters for a cam profile automat"

In this example, we will implement a simple task using the cam profile automat.

Default:

Products are carried past a cutter in specific intervals on a conveyor belt. When a product is detected by a trigger, the product should be cut in the next period at the corresponding position. If no trigger is received (no product present), then the cut procedure is not activated.

Fig. 59.1: The machine's initial situation

Fig. 59.2: Product is detected machine must switch to state 2 in the next period

ASiM Multi-Axis Functions TM441 69

Page 71: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Distribution on the conveyor belt corresponds to the master period. (Master period example = 1000 units)

Procedure:Sketch the automat state diagram. The basis state 0 should be used for the automat start (see the event type ncS_START).

Draw the required cam profiles in the cam profile editor and make sure that the distribution on the conveyor belt corresponds to the master period.

Configure the cam profile automat using the application data structure and start it via the Watch function.

(* Init Program *)(*general automat parameters*) AutData.Master := Axis1Obj; AutData.StartPosition := 0; AutData.StartInterval := 1000;

(*Automat STATE 0 Basis State – Event 1*) AutData.State[0].Event[0].Type := ncS_START; AutData.State[0].Event[0].Attribute := ncAT_ONCE; AutData.State[0].Event[0].NextState := 1;

(*Automat STATE 1 standstill*) AutData.State[1].CamProfileIndex := 3; AutData.State[1].MasterFactor := 1; AutData.State[1].SlaveFactor := 1;

(*Automat STATE 1 standstill – Event 1*) AutData.State[1].Event[0].Type := ncTRIGGER1; AutData.State[1].Event[0].Attribute := ncST_END; AutData.State[1].Event[0].NextState := 2;...(* Cyclic program section *)...(* Automat START *)MC_BR_AutControl_0.AdrAutData := ADR(AutData);MC_BR_AutControl_0.Deceleration := 500; MC_BR_AutControl_0.InitAutData := 1;...MC_BR_AutControl_0();

70 TM441 ASiM Multi-Axis Functions

Page 72: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Tips for implementation

Prepare the linked axes for movement actions using the known methods.

The jog routine from the "basic" task can be used for constant movement of the master axis. Start the cam profile automat, which was configured earlier, using the respective command. Use the trigger input1 to signal the presence of a product.Be sure to also observe the drive status.

ASiM Multi-Axis Functions TM441 71

Page 73: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Example: "Labeling machine"

Requirements:

In the following process, self-adhesive labels will be placed on bottles. The bottles that will be labeled are transported on a conveyor belt (master axis) from right to left. The carriers on the belt ensure equal spacing between the bottles.The self-adhesive labels are provided on a paper belt (label belt), which is drawn from a roll (slave axis).Before the roll, the label band is looped around 180° on a metal edge. This frees the labels from the belt.

The process is started with an empty machine.A trigger signal is used to determine whether a bottle is present or not.

Fig. 60: Labeling machine

72 TM441 ASiM Multi-Axis Functions

Page 74: Tm441 Asim Multi-Axis Functions

l

Cam Profile Automat

Let's take a look at the cam profile status diagram for this labeling machine:

0Basis

S_START 1Stillst

TRIGG

Z_ENDE

21/2Agl TRIGG

Z_ENDE

3Zyk

TRIGG

Z_ENDE

4Agl1/2

TRIGG

Z_ENDE

Fig. 61: Cam profile status diagram for the labeling machine

5 states are required:

Basis state 0: For starting the process at a specific master position.

State 1: Is processed if a bottle was not present in the current and in the new cycle (no trigger signal).

State 2: After one period with no bottle (or after starting the machine) this state is used to dispense the nextlabel.

State 3: This state, in which the labels are applied, runs constantly in normal operation (without any missing bottles).

State 4: This state is processed if a label was applied in the preceding cycle and a bottle is not present in the current cycle.

Take note that the conveyor belt on this labeling machine cannot contain a bottle when starting in the first period.

ASiM Multi-Axis Functions TM441 73

Page 75: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

The following image illustrates the position curve of the labeling machine. The linear segments represent the synchronous sections.One label is applied within each of these segments. Master and slave must move at the speed in these segments so that the label can be evenly applied to the bottle.

synchronous sections compensation phases

slave- position

½ compensation

½ compensation

compensation

master- position

½ compensation

Fig. 62: Possible cam profile for the labeling machine

The bottles are distributed evenly from one another (master period). One bottle should be labeled per master period. The labels are also distributed evenly on the belt (slave period).

The slave synchronizes itself to the next bottle (if present) in the compensation phases. To do this, the slave must accelerate from standstill to the master speed starting at a specific master position.

If a trigger does not occur (no bottle), then only a half compensation movement is performed in state 4 and then transferred to standstill. When the next bottle is present, a half compensation movement is made again in state 2 (slave accelerates to master speed) and the label is applied.

74 TM441 ASiM Multi-Axis Functions

Page 76: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Note:

The "automat" task from the ACP10_MC sample project shows the application of the function for setting parameters and controlling the cam profile automat within the framework of a complete procedure. All routines for preparing the drive and handling errors (comparable to the "basic" task) are contained in the program sequence. The familiar control structure is provided for operating the procedures.

Starting the automat in the "automat" task creates the functionality of a "mini labeling machine" – see Automation Studio Online Help Cam Profile Automat Examples.<<

ASiM Multi-Axis Functions TM441 75

Page 77: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.4 Compensation gear

As mentioned already, a compensation gear can be used for each state.

The compensation gear is an automatically calculated curve which compensates for position differences during a state transition and maintains a continuous connection of the cam profiles. The necessary parameters are provided in the MC_BR_InitAutState function block and in the <MC_AUTDATA_TYP>.State[x] data structure. (see 5.2.4 Defining the states)

Fig. 63 Compensation gear

The figure above shows a compensation between two consecutive states (cam profiles). If compensation is used in a state, then the compensation movement is always performed before the cam profile of the state.

These are the basis parameters for defining the compensation:

Compensation mode (CompMode)

Master compensation distance (MasterCompDistance)

Slave compensation distance (SlaveCompDistance)

The different compensation gear modes provide possibilities forcompensating path as well as speed differences.

76 TM441 ASiM Multi-Axis Functions

Page 78: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

5.4.1 Compensation modes

Defining the exit point:The exit point is always at the end of the cam profile when using the event attribute ncST_END and within the curve or within the compensation where the event occurs when using ncAT_ONCE.

ncOFF

Compensation gear disabled.

ncONLYCOMP

The compensation distances are valid from the end point of the preceding state to the starting point of the cam profile in the next state.

Fig. 64: Compensation mode ncONLYCOMP with event attribute ncST_ END

The configured compensation distances (g2/h2) are valid from the curve end point of the preceding state to the starting point of the cam profile in the next state. The rest of the cam profile from the exit point (change event) to the end of the cam profile is added to the configured compensation distance.

Event

Fig. 65: Compensation mode ncONLYCOMP with event attribute ncAT_ONCE

ASiM Multi-Axis Functions TM441 77

Page 79: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

ncONLYCOMP_DIRECT

The configured compensation distances (g2/h2) are valid, unlike the ncONLYCOMP mode, from the exit point (event occurs) to the starting point of the cam profile in the next state.

Fig. 66: Compensation mode ncONLYCOMP_DIRECT with event attribute ncAT_ONCE

ncWITH_CAM

The configured compensation distances are based on the section starting at the middle of the first cam profile to the middle of the second cam profile. This offers the advantage that the master and slave periods are not changed when the cam profile is scaled. In this case, the effective compensation distances (a2/b2) are based on the section from the end point of the curve of the preceding state to the starting point of the cam profile in the next state and are then respectively shorter if the cam profile is scaled.

Fig. 67: Compensation mode ncWITH_CAM with event attribute ncST_ END

78 TM441 ASiM Multi-Axis Functions

Page 80: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

In this case, the configured compensation distances (g2/h2) are also valid from the middle of the first cam profile to the middle of the second cam profile. Compensation starts when the event occurs and causes the effective compensation distances (a2/b2) to be expanded to include the rest of the cam profile from the exit point (change event) to the end of the cam profile.

Event

Fig. 68: Compensation mode ncWITH_CAM with event attribute ncAT_ONCE

ncMA_LATCHPOS

The configured master compensation distance (g2) runs from the latch position to the middle of the next curve. The slave compensation distance (h2) is defined from "middle to middle curve", the same as for ncWITH_CAM. ncTRIGGER1, ncTRIGGER2 and ncS_START are supported as latch events for the master set position.

Fig. 69: Compensation mode ncMA_LATCHPOS with event attribute ncST_ END

The use of this compensation is an event controlled process ("cut after trigger") with fixed slave intervals.

ASiM Multi-Axis Functions TM441 79

Page 81: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Two states are shown in the image above. A change event ncTRIGGER1 + ncP_EDGE with the event attribute ncST_END and target state "state 2" is defined for the first state. If the trigger event occurs in state 1, then the master position is latched and the effective compensation distance (a2) is calculated for state 2.

ncSL_LATCHPOS

The configured slave compensation distance (h2) runs from the latch position to the middle of the next curve. The master compensation distance (g2) is defined from "middle to middle of curve", the same as forncWITH_CAM. ncTRIGGER1 and ncTRIGGER2 are supported as latch events for the slave set position.

The slave ParID that is latched is determined via the input parameterSlaveLatchParID of the FB MC_BR_InitAutPar.

Fig. 70: ncSL_LATCHPOS with event attribute ncST_ END

ncSL_ABS

An absolute slave position is to be reached by means of a compensation gear. The master compensation distance is specified relatively, like in the compensation mode ncONLYCOMP.

80 TM441 ASiM Multi-Axis Functions

Page 82: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Fig. 71: ncSL_ABS with event attribute ncST_ END

Modes for compensation of speed differences

The three following modes are used to compensate for speed differences. The goal of this mode is to achieve the slope (speed) of the subsequent cam profile while staying within the slave limits.

Fig. 72: Compensation of speed differences

The three compensation modes differ from one another based on the following properties:

ncV_COMP_A_SL

The configured compensation distances have no influence here because the effective compensation distances are produced solely by adhering to the slave limits. As a result, the entrance point of the subsequent cam profile is achieved in the fastest way possible.

ncV_COMP_S_MA

ASiM Multi-Axis Functions TM441 81

Page 83: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

The configured master compensation distance is maintained, the effective slave compensation distance is produced solely by adhering to the slave limits, regardless of the configured slave compensation distance.

ncV_COMP_S_SL

The configured slave compensation distance is maintained, the effective master compensation distance is produced solely by adhering to the slave limits, regardless of the configured master compensation distance.

82 TM441 ASiM Multi-Axis Functions

Page 84: Tm441 Asim Multi-Axis Functions

Cam Profile Automat

Table of abbreviations in the compensation graphics

The following parameters are used to calculate the compensation because the compensation always runs from the exit point of the cam profile of the preceding state (state1) to the entrance point of the cam profile of the next state (state2):

State1:

Abbreviati on

Description

k1x Master multiplication factor AUT_MA_FACTOR

k1y Slave multiplication factor AUT_SL_FACTOR

a1 "effective" master compensation distance

b1 "effective" slave compensation distance

c1 Master curve period * k1x

d1 Slave curve period * k1y

r1 Relative master position in the active curve

s1 Relative slave position in the active curve s1 = k1y * curve function(r1 / k1x)

l1 Master latch position (set position) at time of trigger

q1 Slave latch position at time of trigger (AUT_SL_LATCH_ID)

m1 Master position (at the current automat calculation cycle)

n1 Slave position (at the current automat calculation cycle)

o1 Master curve end position

p1 Slave curve end position

State2:

Abbreviation Description

k2x Master multiplication factor AUT_MA_FACTOR

k2y Slave multiplication factor AUT_SL_FACTOR

a2 "effective" master compensation distance

b2 "effective" slave compensation distance

c2 Master curve period * k2x

d2 Slave curve period * k2y

g2 Master compensation distance parameter AUT_COMP_MA_S

h2 Slave compensation distance parameter AUT_COMP_SL_S

u2 Master entrance position in the cam profile AUT_MA_CAM_LEADIN

ASiM Multi-Axis Functions TM441 83

Page 85: Tm441 Asim Multi-Axis Functions

Summary

6. SUMMARY

The ACP10_MC library provides numerous functions for linking axisobjects. The individual function blocks are designed based on the PLCopen Motion Control standard and feature a uniform design regarding functional usage.

With the electronic gear it is possible to implement linear position links, even with a defined starting point for the axes, if necessary.

Corresponding function blocks are also provided for non-linear position links via electronic cam profiles. As a result, the linking of different cam profiles is controlled by the application task.

The creation of cam profiles is supported by a cam profile editor in Automation Studio. Many different settings make it easy to adjust a cam profile to the process.

Fig. 73 Cartoning

The ACOPOS cam profile automat is an extremely powerful tool for effective linking of cam profiles. The necessary sequences are completely predefined. Initialization of the automat structure and control of the automat mode can be handled using clear and organized functions. Afterthe cam profile automat is started, the defined sequences are processed on the ACOPOS fully independent. This reduces the load on the application program and allows a very fast, event-controlled positioning sequence.

The ACP10_MC multi-axis functions are subject to the effects of the states in the Motion Control diagram of states. The user receives the necessary information for planning the sequence here.

The ACP10_MC sample project contains sample tasks for the individual linking applications and can be used as a model for creating a complete positioning application.

84 TM441 ASiM Multi-Axis Functions

Page 86: Tm441 Asim Multi-Axis Functions

Appendix

7. APPENDIX

Motion Control Basic Functions (ACP10_MC):

Drive preparation: MC_Power MC_HomeMC_BR_BrakeOperation

MC_BR_InitModPod MC_BR_LoadAxisPar MC_BR_SaveAxisPar MC_BR_InitAxisPar MC_BR_InitAxisSubjectPar

Basis movements: MC_MoveAbsolute MC_MoveAdditive MC_MoveVelocity MC_BR_MoveAbsoluteTriggStop MC_BR_MoveAdditiveTriggStop MC_BR_MoveVelocityTriggStop MC_BR_EventMoveAbsolute MC_BR_EventMoveAdditive MC_BR_EventMoveVelocity MC_StopMC_HaltMC_SetOverride

Determining the drive status MC_ReadStatus MC_ReadActualPosition MC_ReadActualVelocity MC_ReadActualTorque

Determining and acknowledging drive errorsMC_ReadAxisErrorMC_Reset

Digital input/output signalsMC_ReadDigitalInput

ASiM Multi-Axis Functions TM441 85

Page 87: Tm441 Asim Multi-Axis Functions

Appendix

MC_ReadDigitalOutput MC_WriteDigitalOutput MC_DigitalCamSwitch

Position measurement MC_TouchProbe MC_BR_TouchProbe MC_AbortTrigger

Motion Control Multi-axis Functions (ACP10_MC):

Electronic gears: MC_GearIn MC_GearInPos MC_GearOut MC_Phasing MC_BR_Phasing MC_BR_Offset

Cam profiles: MC_CamTableSelect MC_CamIn MC_CamOut

Cam profile automat: MC_BR_DownloadCamProfileObj MC_BR_DownloadCamProfileData MC_BR_InitAutPar MC_BR_InitAutState MC_BR_InitAutEventMC_BR_AutControl

86 TM441 ASiM Multi-Axis Functions


Recommended