LinMot C1250-IP Series Application Note

How-to plc commissioning
Table of Contents

Advertisement

PLC Commissioning of LinMot Servo Drives
Application Note / How-to
March 2020
0185-1120-E_1V5_AN_PLC_Commissioning

Advertisement

Table of Contents
loading

Summary of Contents for LinMot C1250-IP Series

  • Page 1 PLC Commissioning of LinMot Servo Drives Application Note / How-to March 2020 0185-1120-E_1V5_AN_PLC_Commissioning...
  • Page 2 NTI AG reserves itself the right to make changes at any time and without notice to reflect further technical advance or product improvement. NTI AG Tel: +41 56 419 91 91 LinMot Fax: +41 56 419 91 92 ® Bodenaeckerstrasse 2 Email: office@linmot.com CH-8957 Spreitenbach Homepage: www.linmot.com...
  • Page 3: Table Of Contents

    3.3.2 Config Module ............................18 3.3.3 Links to PLC Control ..........................19 3.3.4 Check EoE settings ..........................20 3.4 Check with LinMot-Talk if the Fieldbus is running ..................21 4 LinMot Profile: Siemens TIA ........................... 22 4.1 Overview ............................... 22 4.2 Configuration and Connection of the LinMot Drive ..................
  • Page 4 PLC Commissioning 5.4.3 Add a LinMot drive using the EDS file (recommended for Studio <V31) ..........41 5.4.4 Add a LinMot drive as Generic Ethernet Module (ETHERNET-MODULE) ..........44 5.5 Check with LinMot-Talk if the Fieldbus is running ..................46 6 Drive Profile: Siemens TIA, PROFIdrive......................
  • Page 5 9.3.1 EtherCAT Device Description File XML ....................100 9.3.2 Scanning the EtherCAT for new Devices ....................100 9.3.3 Setting up the Process Data of the LinMot Drive ................... 102 9.3.4 Check EoE settings ..........................104 9.3.5 Setting up the NC Axis ........................... 105 9.4 Encoder Parameter Examples for Linear and Rotary Motors (Axis >...
  • Page 6 12.3.2 XDD File ............................... 150 12.3.3 Powerlink Connection .......................... 150 12.3.4 Node ID ..............................150 12.4 Short Description of the LinMot SDC interface function block ..............151 12.4.1 Principle of Operation........................... 151 12.4.2 HTML Help ............................151 12.4.3 LM_SdcIf (Interface Function Block) ....................152 12.4.4 enCallType ............................
  • Page 7 13.3.2.3 Set node address by EtherCAT Master ..................189 13.3.3 Scanning the EtherCAT for new Devices ..................... 190 13.3.4 Create a motion axis and link it to your physical LinMot axis .............. 191 13.3.5 Setting up the motion axis ........................193 13.4 Drive based homing ..........................
  • Page 8: Use Of This Document

    Use of This Document This document is an Application Note / How-To to help the user connecting LinMot drives to different PLC types. It provides guides when using function block libraries provided by NTI AG / LinMot and guides to integrate LinMot drives using standardized drive profiles.
  • Page 9: Trademarks

    ODVA, Inc EtherNet/IP™, CIP™, CIP Sync™, All other product and company names and marks mentioned in this document are the property of their respective owners and are mentioned for identification purposes only. NTI AG / LinMot Page 9 of 205...
  • Page 10: General

    E.g. C1250-SE-XC-xS -> SE = EtherCAT SoE 1.2 Available LinMot Libraries LinMot provides several function block libraries for different PLCs and fieldbus systems to allow a fast and comfortable integration of LinMot drives into almost any control concept. An overview of available LinMot libraries can be downloaded from the LinMot website: http://www.linmot.com/support/plc-library/...
  • Page 11: Documentation / User Manuals

    PLC and the LinMot drive. The manuals are included in the LinMot-Talk software (Menu Manuals → All Documents or Relevant Documents if logged in to a drive) or can be downloaded from the LinMot eCatalogue (search by document reference): http://shop.linmot.com...
  • Page 12: Upid (Unique Parameter Id)

    1.4 UPID (Unique Parameter ID) The value of any parameter of a LinMot drive is stored as an integer value (raw data) in the memory space of the drive. The parameter is identified through its Unique Parameter ID (UPID), which is a 16 Bit integer number.
  • Page 13: Overview

    2 Overview 2.1 LinMot Profile (Commissioning using the LinMot Libraries) The following table shows working combinations of different PLC types and LinMot drives. For these combinations function block libraries and/or example projects are available. Click the link in the See chapter column to directly open the according chapter (if available).
  • Page 14: Drive Profiles (Direct Integration As Motion Axis Using Standardized Drive Profiles)

    The following table shows the drive profiles supported by LinMot servo drives. Based on your PLC type the correct LinMot drive can be selected. Click the link in the See chapter column to directly open the according chapter (if available).
  • Page 15: Linmot Profile: Beckhoff Twincat 2&3

    This chapter shows how a LinMot C1250-EC-XC-0S drive (with LinMot EtherCAT interface) can be integrated and setup in a Beckhoff TwinCAT environment to be used with the library provided by LinMot. For this example, TwinCAT 2 is used. The steps are generally similar for TwinCAT 3.
  • Page 16: Configuration And Connection Of The Linmot Drive

    See Appendix I: Basic Position Control Loop Tuning 3.2.2 XML Files Install the XML file that is part of the LinMot-Talk software/firmware you are using. The most recent device files are always part of the newest LinMot-Talk software. They are located by default: • EtherCAT: \\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\EtherCAT\XML...
  • Page 17: Plc Setup Ethercat (E1450-Ec-Qn, E1250-Ec-Uc, C1X00-Ec-Xc-Xx)

    PLC Commissioning 3.3 PLC Setup EtherCAT (E1450-EC-QN, E1250-EC-UC, C1x00-EC-XC-xx) 3.3.1 Insert LinMot Drive as Slave The required XML files can be found in the following folder (default): C:\Program Files\LinMot\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\EtherCAT\XML These files have to be copied to the IO folder of TwinCAT: •...
  • Page 18: Config Module

    PLC Commissioning 3.3.2 Config Module The Config Module provides access to parameters, curve profiles, command table and so on of a LinMot drive. If the config function blocks of the library are used the „Config Module“ inputs and outputs (0x1B08 &...
  • Page 19: Links To Plc Control

    3.3.3 Links to PLC Control To be able to link the input and output data of the LinMot drive you have to create an instance of the tstLM_Axis data type (part of the library) in the global variables of you PLC project.
  • Page 20: Check Eoe Settings

    On supported drives (C1250-..., C1450-… & E1450-...) please check the EoE (Ethernet over EtherCAT) settings. LinMot drives do NOT support the DHCP mode yet. A fix IP must be assigned (select IP Address) or the EoE feature must be completely disabled (disable Virtual Ethernet Port).
  • Page 21: Check With Linmot-Talk If The Fieldbus Is Running

    PLC Commissioning 3.4 Check with LinMot-Talk if the Fieldbus is running LinMot-Talk shows the status of the fieldbus. Open the variables EtherCAT and check if the bus is running (EtherCAT State = Operational State). Check fieldbus status: NTI AG / LinMot...
  • Page 22: Linmot Profile: Siemens Tia

    4 LinMot Profile: Siemens TIA 4.1 Overview This chapter shows how a LinMot drive with either PROFIBUS or PROFINET interface (LinMot Profile) can be connected to a Siemens PLC using TIA Portal (for Step 7 the general steps are similar).
  • Page 23: Configuration And Connection Of The Linmot Drive

    See Appendix I: Basic Position Control Loop Tuning 4.2.2 GSD / GSDML files Install the GSD/GSDML file(s) that is part of the LinMot-Talk software/firmware you are using. The most recent device files are always part of the newest LinMot-Talk software. They are located by default: • PROFIBUS: \\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\PROFIBUS\GSD...
  • Page 24 “Interface” at the bottom of the drive has to be set to “ON” (factory default) Attention: According to the PROFIBUS standard the maximal node address is 127 (addresses 126 and 127 are reserved for special purpose and should normally not be used). Page 24 of 205 NTI AG / LinMot...
  • Page 25: Profinet Connection

    The drive is connected to the PROFINET network using the X17 (IN) & X18 (OUT) connectors. The below pictures show the ports of an E1250-PN-UC drive. On all other LinMot drives supporting PROFINET the ports are named the same (X17 & X18) but they may be placed differently on the drive housing.
  • Page 26: Plc Setup Profibus (E1430-Dp-Qn, E1230-Dp-Uc, E1130-Dp-Xx)

    (TIA Portal → Options → Install general station description file (GSD)) The required GSD file can be found by default in the following folder: C:\Program Files\LinMot\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\PROFIBUS\GSD\ Drag and drop the desired drive from the catalogue to the network view.
  • Page 27 Afterwards insert the required modules into the available slots as shown in the figure below. Note: Set the name and the PROFIBUS address of the device according the requirements of your application NTI AG / LinMot Page 27 of 205...
  • Page 28: Plc Setup Profinet (E1450-Pn-Qn, E1250-Pn-Uc, C1250-Pn-Uc, C1150Pn-Uc)

    (TIA Portal → Options → Install general station description file (GSD)) The required GSDML file can be found by default in the following folder: C:\Program Files\LinMot\LinTalk X.X Build XXXXXXXX\Firmware\PROFINET\GSDML\ Drag and drop the desired drive from the catalogue to the net view.
  • Page 29 Afterwards the module „Default IO mapping with Config“ is dropped into the available slot as shown the figure below. By default, when adding a new LinMot drive, this module is already present in slot 1. Tip: It is possible to add up to 4 parameter and 4 monitoring channels to write or read specific parameters or variables in the process data.
  • Page 30: Assigning The Device Name And Ip Address

    PLC Commissioning 4.4.1 Assigning the Device Name and IP Address The following three steps show how to assign the PROFINET device name to the LinMot drive using TIA Portal. The IP address is assigned automatically when PROFINET starts. 1. Set the IP address and the device name in the device properties:...
  • Page 31 PLC Commissioning 2. Choose the device you want to assign the name to (right-click on the device): NTI AG / LinMot Page 31 of 205...
  • Page 32 PLC Commissioning 3. Search for the LinMot drive you want to name. The safest way to identify the drive is by either activating the “Flash LED” function in TIA Portal or to verify the MAC address (can be found on the housing of the drive).
  • Page 33: Check With Linmot-Talk If The Fieldbus Is Running

    PLC Commissioning 4.5 Check with LinMot-Talk if the Fieldbus is running LinMot-Talk shows the status of the fieldbus. Open the variables PROFIBUS / PROFINET and check if the Node Address / IP Address is correct. Check fieldbus status: NTI AG / LinMot...
  • Page 34: Linmot Profile: Rockwell Rslogix 5000 / Logix Designer

    This chapter shows how a LinMot C1250-IP-XC-0S drive (with LinMot EtherNet/IP interface) can be integrated and setup in a Rockwell Automation environment to be used with the library provided by LinMot. The Add-On Instructions for Rockwell Automation controllers can be downloaded from: http://download.linmot.com/plc_lib/libraries/Rockwell/...
  • Page 35: Configuration And Connection Of The Linmot Drive

    5.3.2 EDS Files (Requires RSLogix 5000 V20 or higher) Install the EDS file that is part of the LinMot-Talk software/firmware you are using. The most recent device files are always part of the newest LinMot-Talk software. They are located by default: •...
  • Page 36: Plc Setup Ethernet/Ip

    After setting the IP address the new LinMot device should appear in RSLinx Classic as “Unrecognized Device” (e.g. IP 192.168.1.90 see below). If the EDS file is installed, the LinMot drive will appear in RSLinx with its Device Type (e.g. IP 192.168.1.89). Important: If no AOP or EDS file is used the LinMot must be setup as Generic Ethernet Module.
  • Page 37: Add A Linmot Drive Using Aop (E1250-Ip-Xx, C1250-Ip-Xx)

    PLC Commissioning 5.4.2 Add a LinMot drive using AOP (E1250-IP-xx, C1250-IP-xx) Important: The AOP for C1250-IP-XC-xS and E1250-IP-UC drives are included in Studio 5000 from V31! For Studio 5000 version <V31 the AOP installation package for manual installation can be downloaded from: http://download.linmot.com/plc_lib/libraries/Rockwell/...
  • Page 38 PLC Commissioning 2. Select module type (LMDrive): Page 38 of 205 NTI AG / LinMot...
  • Page 39 PLC Commissioning 3. Set name and IP address: NTI AG / LinMot Page 39 of 205...
  • Page 40 4. Setup connection (Set desired RPI and check that “Use Unicast Connection … “ is selected) Now you can download your project to the controller and check if the connection is running, as described in chapter 5.5. Page 40 of 205 NTI AG / LinMot...
  • Page 41: Add A Linmot Drive Using The Eds File (Recommended For Studio

    PLC Commissioning 5.4.3 Add a LinMot drive using the EDS file (recommended for Studio <V31) 1. The EDS files can be installed using the EDS Hardware Installation Tool: Follow the wizard and install the EDS files from the location mentioned in chapter 5.3.2.
  • Page 42 PLC Commissioning 3. Select Module Type: Page 42 of 205 NTI AG / LinMot...
  • Page 43 PLC Commissioning 4. Set Name and IP Address NTI AG / LinMot Page 43 of 205...
  • Page 44: Add A Linmot Drive As Generic Ethernet Module (Ethernet-Module)

    PLC Commissioning 5.4.4 Add a LinMot drive as Generic Ethernet Module (ETHERNET-MODULE) 1. Add a new ETHERNET-MODULE by right-click on Ethernet in the I/O Configuration: Page 44 of 205 NTI AG / LinMot...
  • Page 45 Be careful when defining these parameters, because only a correct setting will run in the EtherNet/IP network. Only the name and the RPI (Requested Packet Interval) can be defined freely. The IP must be set according the IP settings of the LinMot drive or vice-versa. NTI AG / LinMot...
  • Page 46: Check With Linmot-Talk If The Fieldbus Is Running

    PLC Commissioning 5.5 Check with LinMot-Talk if the Fieldbus is running LinMot-Talk shows the status of the fieldbus. Open the variables Ethernet/IP for actual IP address, Net Mask or Ethernet/IP:O->T, T->O config to check the connection. Check fieldbus status: Page 46 of 205...
  • Page 47: Drive Profile: Siemens Tia, Profidrive

    Image Source: https://mall.industry.siemens.com PROFINET is an open real-time Ethernet network The LinMot drive acts as slave in this network and is implemented with the TPS1 chip from Renesas. For further information on PROFINET and the PROFIdrive fieldbus protocols please visit: http://www.profibus.com/...
  • Page 48: Configuration And Connection Of The Linmot Drive

    It is assumed that the motor connected to the drive is already configured. Use the Motor Wizard inside LinMot-Talk to setup the motor (Menu -> Drive -> Motor Wizard): Make sure that you select “No Drive Homing” in the Motor Wizard as with SIEMENS Telegram 105 the homing of the axis is done in the PLC.
  • Page 49: Gsdml File

    PLC Commissioning 6.2.2 GSDML File Install the GSDML file that is part of the LinMot-Talk software/firmware you are using. The most recent device files are always part of the newest LinMot-Talk software. They are located by default: • PROFIdrive: \\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\ProfiNet\GSDML_PD 6.2.3 PROFINET Connection...
  • Page 50: Plc Setup

    6.3 PLC Setup 6.3.1 Install GSDML File(s) The GSDML files for the drives are located by default in the LinMot-Talk installation path: C:\Program Files (x86)\LinMot\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\ProfiNet\GSDML_PD In TIA Portal select in the menu bar “Options > Manage general station description files (GSD)” and navigate to the directory you have put the GSDML file(s) in.
  • Page 51: Set Profinet Name And Ip Address

    PLC Commissioning 6.3.3 Set PROFINET Name and IP Address In the device properties assign a name and an IP address according your network setup to the drive: NTI AG / LinMot Page 51 of 205...
  • Page 52 “Assign device name” or in the project tree under “Online access”. Normally the PROFINET name and IP address are assigned automatically to the devices if the topology is defined. Page 52 of 205 NTI AG / LinMot...
  • Page 53: Insert And Setup A New Technology Object (Linear Axis)

    6.3.4 Insert and Setup a new Technology object (Linear Axis) 1. Add new object: 2. Select a name and the type of the axis and click OK: 3. Open the axis configuration: NTI AG / LinMot Page 53 of 205...
  • Page 54 PLC Commissioning 4. Basic Parameters: 5. Hardware Interface > Drive: Make sure the correct drive is selected. Page 54 of 205 NTI AG / LinMot...
  • Page 55 PLC Commissioning 6. Hardware Interface > Encoder: Set Encoder type to “Incremental” Note: If an absolute encoder is connected to the LinMot drive, select “Absolute” as Encoder Type. NTI AG / LinMot Page 55 of 205...
  • Page 56 E.g. drive: 2 m/s => 2000 mm/s * 60 = 120’000 1/min Set to the maximum force of the motor (see datasheet). The motor in this example has 255 N peak force. Page 56 of 205 NTI AG / LinMot...
  • Page 57 The internal resolution of the LinMot drive is 0.1um. Note: If an absolute encoder is connected to the LinMot drive and setup in Hardware Interface > Encoder then set the fine resolution for both Gx_XIST1 and Gx_XIST2 to 0 bit.
  • Page 58 PLC Commissioning 9. Extended parameters > Mechanics: Make sure the Leadscrew pitch is set to 1 mm/rot. 10. Extended parameters > Limits > Torque Limits: Set Effective to On motor side. Page 58 of 205 NTI AG / LinMot...
  • Page 59: Insert And Setup A New Technology Object (Rotary Axis)

    PLC Commissioning 6.3.5 Insert and Setup a new Technology object (Rotary Axis) In this example we setup a RS01-52x40 motor (rotary part of a LinMot PR01-52x40…) 1. Add new object: 2. Select a name and the type of the axis and click OK: 3.
  • Page 60 PLC Commissioning 4. Basic Parameters: 5. Hardware Interface > Drive: Make sure the correct drive is selected. Page 60 of 205 NTI AG / LinMot...
  • Page 61 PLC Commissioning 6. Hardware Interface > Encoder: The used RS01-52x40 motor (rotary part of a LinMot PR01-52x40…) has a single turn absolute encoder feedback. Therefor select “Cyclic absolute” as encoder type. NTI AG / LinMot Page 61 of 205...
  • Page 62 7. Hardware Interface > Data exchange with the drive: Set the reference speed according the settings within the drive: Set to the maximum torque of the motor according the datasheet. The motor in this example has 1.5 Nm peak torque. Page 62 of 205 NTI AG / LinMot...
  • Page 63 - RS01: cyclic absolute (single turn), 360’000 increments per revolution - EC02: cyclic absolute (single turn), 524’288 increments per revolution LinMot supports a wide range of rotary motor. Just check the motor wizard for how many ticks per revolution the motor used has.
  • Page 64 PLC Commissioning 9. Extended parameters > Limits > Torque Limits: Set Effective to “On motor side”. Page 64 of 205 NTI AG / LinMot...
  • Page 65: Home / Set Reference

    If the hard stop should be detected when the motor reaches the set force limit then check for “InLimitation” in state 5 of the following example, or if the hard stop should be detected by the position lag ("Axis1".Clamping.FollowingErrorDeviation) then use “InClamping”. NTI AG / LinMot Page 65 of 205...
  • Page 66 "MC_MOVEABSOLUTE_Axis1".Execute := FALSE; "MC_MOVEABSOLUTE_Axis1".Velocity := -1; "MC_HALT_Axis1".Execute := FALSE; "MC_HOME_Axis1".Execute := FALSE; "MC_MOVEVELOCITY_Axis1".Execute := FALSE; "MC_TORQUELIMITING_Axis1".Enable := FALSE; "Axis1".Clamping.FollowingErrorDeviation := 1; //Reset clamping window "GVL".bHomeExecute := false; "GVL".iHomeState := 0; ELSE END_CASE; Page 66 of 205 NTI AG / LinMot...
  • Page 67: Home / Set Reference Of The Rotary Axis

    This can be done using the function block MC_HOME with mode 6 (Absolut encoder adjustment (relative)) and Position = 0.0. Note: Please check the SIEMENS Information System for more information about the Motion Control function blocks. NTI AG / LinMot Page 67 of 205...
  • Page 68: Active Homing For Both Linear And Rotary Motors

    From firmware 6.8 Build 20190315 it is possible to use a zero mark via PROFIdrive telegram. If you have a reference cam/switch setup a digital input of the LinMot drive to “Home Switch”: Select the source for Reference mark 1 (either the “Home Switch” or the Z signal of a connected ABZ sensor): The active homing itself could then be executed using the MC_HOME function block with mode 3 or 5.
  • Page 69 From firmware 6.9 Build xxxxxxxx additionally the Range Indicator 1 can be used to generate the zero mark via PROFIdrive telegram. As example the motor current or difference position can be used to generate the zero mark. NTI AG / LinMot Page 69 of 205...
  • Page 70: Parameter Access (Ram)

    PLC Commissioning 6.5 Parameter Access (RAM) Read/Write access to the RAM value of LinMot drive parameters/variables can be done using the SIEMENS function block “SINA-PARA” (FB286) from the library “DriveLib_S71500” that is installed with SINAMICS Startdrive. To the UPID (parameter to be accessed) an offset of 16#2000 must be added.
  • Page 71: Add Additional Parameters / Variables To The Real-Time Channel

    PLC to the Drive (32Bit each, Par Channel 1-4) available. 6.6.1 Drive Configuration In LinMot-Talk the UPID (parameter/variable address) is entered in the particular channel. As example in Monitoring Channel 1 the UPID 1B93h (Demand Current) and in Parameter Channel 1 & 2 the UPID 13FCh (Maximal Current Positive) and 13FDh (Maximal Current Negative) are entered.
  • Page 72: Plc Configuration

    On SIEMENS PLCs, the double words are transmitted in big endian organization. Therefore, it is required to swap the high and the low word. This can be done by using the function ROR(). E.g. DemandCurrent:=ROR(DemandCurrent,16); Page 72 of 205 NTI AG / LinMot...
  • Page 73: Tuning The Control Loops

    6.7 Tuning the Control Loops 6.7.1 Drive Control Loop To start tuning use the default soft settings in the Motor Wizard within LinMot-Talk (motor depending). Then during operation increase the P and D Gains until you get a good positioning.
  • Page 74 After finishing the motor wizard and restarting the drive, the control loop parameters can be tuned in the Control Parameter Set A (mainly P and D Gains): Up to firmware 6.6 Build 20170410 the I Gain in the Control Parameters Set A of the LinMot drive must be set to 0 (zero).
  • Page 75: Plc Control Loop

    From this value increase until you reach the required stiffness and accuracy. Make sure DSC is enabled. Now you are ready to enable the motor and start some movements to optimize the control parameters in both the drive and the PLC NTI AG / LinMot Page 75 of 205...
  • Page 76: Check With Linmot-Talk If The Fieldbus Is Running

    PLC Commissioning 6.8 Check with LinMot-Talk if the Fieldbus is running LinMot-Talk shows the status of the fieldbus. Open the variables PROFIdrive and check if the Node Address / IP Address is correct. Check fieldbus status: Page 76 of 205...
  • Page 77: Drive Profile: Rockwell Motion Using Pva Streaming (Cip Sync)

    7 Drive Profile: Rockwell Motion using PVA Streaming (CIP Sync) 7.1 Overview LinMot C1250-CM-XC-xS drives (with LinMot EtherNet/IP CIP Sync interface) can be integrated and setup in a Rockwell Automation environment as motion axis. A demo project including EDS files and a detailed documentation can be found here: http://download.linmot.com/plc_lib/examples/Rockwell_CM/...
  • Page 78: Drive Profile: Beckhoff Twincat 2/3, Soe

    (s) Image Source: http://www.beckhoff.com/ EtherCAT is the real-time Ethernet network originally developed by Beckhoff. The LinMot acts as Slave in this network and is implemented with the standard ASIC ET1100 from Beckhoff. For further information on the EtherCAT fieldbus please visit: http://www.ethercat.org/...
  • Page 79: Configuration And Connection Of The Linmot Drive

    It is assumed that the motor connected to the drive is already configured. Use the Motor Wizard inside LinMot-Talk to setup the motor (Menu -> Drive -> Motor Wizard): Make sure that you select a homing mode in the Motor Wizard as with the SoE interface a drive-based homing is possible (e.g.
  • Page 80: Xml File

    8.2.2 XML File Install the XMLfile that is part of the LinMot-Talk software/firmware you are using. The most recent device files are always part of the newest LinMot-Talk software. They are located by default: • EtherCAT_SoE: \\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\EtherCAT_SoE\XML 8.2.3 EtherCAT Connection...
  • Page 81: Plc Setup

    PLC Commissioning 8.3 PLC Setup 8.3.1 EtherCAT Device Description File XML The EtherCAT device description file (XML) is located by default in the LinMot-Talk installation path: C:\Program Files (x86)\LinMot\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\EtherCAT_SoE\XML Copy this file to your local TwinCAT installation path: •...
  • Page 82 4. If the LinMot drive(s) is found the following message is shown: Select Yes (Ja) 5. You should now have a new axis in your NC configuration: In the next chapter the configuration of the process data of the LinMot drive is shown Page 82 of 205 NTI AG / LinMot...
  • Page 83: Setting Up The Process Data Of The Linmot Drive

    PLC Commissioning 8.3.3 Setting up the Process Data of the LinMot Drive 1. Move to the tab Process Data 2. Select AT 1, right-click the free slot at Offset 6 and select Insert NTI AG / LinMot Page 83 of 205...
  • Page 84 3. Select the S-0-0189 – Following Distance and click OK 4. Select MDT 1, right-click the free slot at Offset 6 and select Insert 5. Select the S-0-0036 – Velocity command value and click OK Page 84 of 205 NTI AG / LinMot...
  • Page 85: Check Eoe Settings

    On supported drives (C1250-..., C1450-… & E1450-...) please check the EoE (Ethernet over EtherCAT) settings. LinMot drives do NOT support the DHCP mode yet. A fix IP must be assigned (select IP Address) or the EoE feature must be completely disabled (disable Virtual Ethernet Port).
  • Page 86: Setting Up The Nc Axis

    The following steps show how to basically setup the NC axis. 1. Axis Encoder: Setup the axis encoder as shown: NC-Encoder tab Parameter tab (for linear axis. Check chapter 8.4 for rotary examples) Sercos tab Page 86 of 205 NTI AG / LinMot...
  • Page 87 3. Axis Controller: Setup the controller as shown: NC-Controller tab 4. You’re now ready to activate the configuration of the PLC and to enable and move the axis in the Online tab of the NC axis. NTI AG / LinMot Page 87 of 205...
  • Page 88: Encoder Parameter Examples For Linear And Rotary Motors

    Scaling Factor Denominator is left to 1.0 8.4.2 Rotary Motors RS01 & RS02 The LinMot RS01 motors (rotary part of LinMot PR01 & PR02 linear rotary motors) have a single turn absolute encoder and by default 360’000 Ticks (Increments) per motor revolution.
  • Page 89: Rotary Motors Ec02

    PLC Commissioning 8.4.3 Rotary Motors EC02 The LinMot EC02 motors have a single turn absolute encoder and by default 524’288 (2^19) Ticks (Increments) per motor revolution. Therefor the following parameters must be set accordingly: • Scaling Factor Numerator must be set to 0.006866455078125 (=360°...
  • Page 90: Homing

    Position the NC axis actual position is set to after homing is done Axis Axis reference of the NC axis The LM_SercosHoming is using the function block FB_GetAxisAMsAddr which is part of the Beckhoff library Tc2_NC (TwinCAT 3) / TcNC (TwinCAT 2). Page 90 of 205 NTI AG / LinMot...
  • Page 91: Visualization

    To acknowledge an error of a SoE drive the function block FB_SoEReset has to be used on TwinCAT systems. This function block is part of the Beckhoff library Tc2_NcDrive (TwinCAT 3) / TcMC2Drive (TwinCAT 2). Note: Use FB_SoEReset from Beckhoff to reset drive errors. NTI AG / LinMot Page 91 of 205...
  • Page 92: Asynchronous Parameter Access

    PLC Commissioning 8.8 Asynchronous Parameter Access Parameters of the LinMot drive can be accessed using the Beckhoff function block FB_EcSoeRead and FB_EcSoeWrite which are part of the Tc2_EtherCAT (TwinCAT 3) / EtherCAT (TwinCAT 2) library. More information about this function blocks can be found in the Beckhoff Information System: http://infosys.beckhoff.com...
  • Page 93 For every access (read or write) the length of the variable connected to pDstBuf/pSrcBuf must be of size 4 Bytes (e.g. datatypes DWORD, DINT, UDINT). If you access a parameter/variable of a different size (e.g. INT, SINT, …) then make a typecast afterwards. NTI AG / LinMot Page 93 of 205...
  • Page 94: Add Additional Parameters Or Variables To The Process Data (Mdt 1 / At 1)

    3. In the Edit PDO Entry window enter the name, the UPID as Index and set the Data Type to DINT (as the Demand Current is of type SINT32) 4. Click OK to finish Page 94 of 205 NTI AG / LinMot...
  • Page 95 3. In the Edit PDO Entry window enter the name, the UPID as Index and set the Data Type to DINT (as the Maximal Current is of type SINT32) 4. Click OK to finish NTI AG / LinMot Page 95 of 205...
  • Page 96 PLC Commissioning Now you can see both added parameters in the solution tree and link them: Page 96 of 205 NTI AG / LinMot...
  • Page 97: Drive Profile: Beckhoff Twincat 2/3, Coe Ds402

    (s) Image Source: http://www.beckhoff.com/ EtherCAT is the real-time Ethernet network originally developed by Beckhoff. The LinMot acts as Slave in this network and is implemented with the standard ASIC ET1100 from Beckhoff. For further information on the EtherCAT fieldbus please visit: http://www.ethercat.org/...
  • Page 98: Configuration And Connection Of The Linmot Drive

    It is assumed that the motor connected to the drive is already configured. Use the Motor Wizard inside LinMot-Talk to setup the motor (Menu -> Drive -> Motor Wizard): Make sure that you select a homing mode in the Motor Wizard as with the CoE interface a drive-based homing is possible (e.g.
  • Page 99: Xml File

    9.2.2 XML File Install the XML file that is part of the LinMot-Talk software/firmware you are using. The most recent device files are always part of the newest LinMot-Talk software. They are located by default: • EtherCAT_CoE: \\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\EtherCAT\XML\ NTIL_CiA402_Servos_Vx_xrx.xml (SG6-7)
  • Page 100: Plc Setup

    PLC Commissioning 9.3 PLC Setup 9.3.1 EtherCAT Device Description File XML The EtherCAT device description file (XML) is located by default in the LinMot-Talk installation path: C:\Program Files (x86)\LinMot\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\EtherCAT\XML Copy this file to your local TwinCAT installation path: •...
  • Page 101 4. If the LinMot drive(s) is found the following message is shown: Select OK 5. You should now have a new axis in your NC configuration: In the next chapter the configuration of the process data of the LinMot drive is shown NTI AG / LinMot Page 101 of 205...
  • Page 102: Setting Up The Process Data Of The Linmot Drive

    PLC Commissioning 9.3.3 Setting up the Process Data of the LinMot Drive 1. Move to the tab Process Data 2. Click Outputs and select only 0x1613 for the PDO Assignment (0x1C12) Page 102 of 205 NTI AG / LinMot...
  • Page 103 PLC Commissioning 3. Click Inputs and select 0x1A12 for the PDO Assignment (0x1C13) NTI AG / LinMot Page 103 of 205...
  • Page 104: Check Eoe Settings

    On supported drives (C1250-..., C1450-… & E1450-...) please check the EoE (Ethernet over EtherCAT) settings. LinMot drives do NOT support the DHCP mode yet. A fix IP must be assigned (select IP Address) or the EoE feature must be completely disabled (disable Virtual Ethernet Port).
  • Page 105: Setting Up The Nc Axis

    The following steps show how to basically setup the NC axis. 1. Axis Encoder: Setup the axis encoder as shown NC-Encoder tab (for linear axis. Check chapter 9.4) 2. Axis Drive: Setup the drive as shown Parameter tab NTI AG / LinMot Page 105 of 205...
  • Page 106 PLC Commissioning NC- Controller tab 3. You’re now ready to activate the configuration of the PLC and to enable and move the axis in the Online tab of the NC axis Page 106 of 205 NTI AG / LinMot...
  • Page 107: Encoder Parameter Examples For Linear And Rotary Motors (Axis > Enc)

    Scaling Factor Denominator is left to 1.0 9.4.2 Rotary Motors RS01 & RS02 The LinMot RS01 motors (rotary part of LinMot PR01 & PR02 linear rotary motors) have a single turn absolute encoder and by default 360’000 Ticks (Increments) per motor revolution.
  • Page 108: Rotary Motors Ec02

    PLC Commissioning 9.4.3 Rotary Motors EC02 The LinMot EC02 motors have a single turn absolute encoder and by default 524’288 (2^19) Ticks (Increments) per motor revolution. Therefor the following parameters must be set accordingly: • Scaling Factor Numerator must be set to 0.006866455078125 (=360°...
  • Page 109: Homing

    Position the NC axis actual position is set to after homing is done Axis Axis reference of the NC axis The LM_DSHoming is using the function block FB_GetAxisAmsAddr which is part of the Beckhoff library Tc2_NC (TwinCAT 3) / TcNC (TwinCAT 2). NTI AG / LinMot Page 109 of 205...
  • Page 110: Visualization

    To acknowledge an error of a CoE drive the function block MC_Reset must be used on TwinCAT systems. This function block is part of the Beckhoff library Tc_MC2 (TwinCAT 3) / MC (TwinCAT 2). Page 110 of 205 NTI AG / LinMot...
  • Page 111: Asynchronous Parameter Access

    PLC Commissioning 9.8 Asynchronous Parameter Access Parameters of the LinMot drive can be accessed using the Beckhoff function block FB_EcCoESdoRead and FB_EcCoESdoWrite which are part of the Tc2_EtherCAT (TwinCAT 3) / EtherCAT (TwinCAT 2) library. More information about this function blocks can be found in the Beckhoff Information System: http://infosys.beckhoff.com...
  • Page 112 Parameter address to be accessed = 16#2000 + UPID (E.g. Maximal Current (UPID 16#13A6) ▶ nIndex = 16#2000 + 16#13A6 = 16#33A6) nSubIndex: The following commands can be performed (see user manual 0185-1103 for more information > search on http://shop.linmot.com) SDO Service Index SubIndex...
  • Page 113: Add Positive And Negative Torque/Force Limit (0X1711) To The Process Data

    Example 2: Torque/Force Limit Negative: 5000 (500.0%) Motor Maximal Current: = Max. Current Negative: Note: Torque/force Limit value is supported from xml version V1.8b7 with Firmware Build 6.8 Build 20190315 and newer. NTI AG / LinMot Page 113 of 205...
  • Page 114 PLC Commissioning Attention: Make sure, that the torque/force limit is not 0. Otherwise the motor can’t move with a current of 0A. Page 114 of 205 NTI AG / LinMot...
  • Page 115: Add Additional Parameters Or Variables To The Process Data

    Type: Sint16 = INT Scale: 0.1 °C 1. In the Process Data select 0x1A20 User Defined Inputs from the PDO List. 2. Right-click on the empty line where only an offset is shown NTI AG / LinMot Page 115 of 205...
  • Page 116 Example 2: Write the Maximal Current (UPID 13A6h) of the drive cyclically by adding it into the User Defined Outputs (0x1620): Name: Maximal Current UPID: 13A6h Type: SInt32 = DINT Scale: 0.001 A Page 116 of 205 NTI AG / LinMot...
  • Page 117 3. In the Edit PDO Entry window enter the name, the UPID as Index and set the Data Type to DINT (as the Maximal Current is of type SINT32) 4. Click OK to finish NTI AG / LinMot Page 117 of 205...
  • Page 118 PLC Commissioning Now you can see both added parameters in the solution tree and link them: Variable Definition in the GVLs Page 118 of 205 NTI AG / LinMot...
  • Page 119: Drive Profile: Schneider Electric Pacdrive 3, Fsp_Drive

    10 Drive Profile: Schneider Electric PacDrive 3, FSP_DRIVE 10.1 Overview This chapter shows how a LinMot C1250-SC-XC-1S drive (SERCOS (FSP_DRIVE) interface) can be integrated and setup in a Schneider Electric PacDrive environment. An example project can be downloaded from (The example is based on the QuickMotionProgramming example from Schneider Electric): http://download.linmot.com/plc_lib/preliminary/Schneider...
  • Page 120: Configuration And Connection Of The Linmot Drive

    It is assumed that the motor connected to the drive is already configured. Use the Motor Wizard inside LinMot-Talk to setup the motor (Menu -> Drive -> Motor Wizard): Make sure that you select a homing mode in the Motor Wizard if you want to use the drive based homing as described in chapter 10.4.2 (e.g.
  • Page 121: Sercos Connection

    The drive is connected to the sercos network using the X17 (IN) & X18 (OUT) connectors. The below pictures show the ports of an E1250-SC-UC drive. On all other LinMot drives supporting sercos the ports are named the same (X17 & X18) but they may be placed differently on the drive housing.
  • Page 122: Sercos Address

    The sercos address has no use with some identification modes like topology-based addressing. If both address selectors are set to 0, the topology address is used as the sercos address when topology-based addressing is configured in the PLC. Page 122 of 205 NTI AG / LinMot...
  • Page 123: Plc Setup

    V2.11 Supported profiles and telegram types FSP_DRIVE (E1x50-SC-xx-xx, C1250-SC-xx-xx) Minimal sercos cycle time 250 µs Vendor Device ID '0150-1764' (E1250-SC-UC) '0150-1785' (E1450-SC-QN-0S) '0150-2357' (E1450-SC-QN-1S) '0150-1887' (C1250-SC-XC-0S-000) '0150-2349' (C1250-SC-XC-1S-000) Vendor Code 342 (0156h) NTI AG / LinMot Page 123 of 205...
  • Page 124: Add The Linmot Drive To The Sercos

    PLC Commissioning 10.3.2 Add the LinMot Drive to the Sercos Right-click on SERCOSIII (Sercos Master) and select Add Device: Insert a name (e.g. DRV_LMAxis1), select SERCOS Drive and click on “Add Device”: Double-click on the new added device to open the configuration.
  • Page 125: Device Configuration

    Following an example setup where the device is identified by TopologyAddress (2) ConfiguredTopologyAddress: (As it is the first device in the ring in this project) VendorCode: VendorDeviceID: ‘0150-2349’ (LinMot C1250-SC-XC-1S-000, for others check chapter 10.3.1) NTI AG / LinMot Page 125 of 205...
  • Page 126: Motor/Mechanic Using A Linmot Linear Motor

    PLC Commissioning 10.3.3.2 Motor/Mechanic using a LinMot linear motor As unit millimeter [mm] is used. The MaxRPM parameter limits the maximal possible velocity to around 1m/s when using 1.0 as FeedConstant. Therefore, the FeedConstant is set to 1’000 and the FeedbackResolution to 10’000’000.
  • Page 127: Motor/Mechanic Using A Rotary Motor

    As unit degree [°] is used. As rotary motor, the FeedbackResolution depends on the settings done within the LinMot-Talk Motor Wizard. It must be set to the same value as Ticks per revolution in the Motor Wizard. For a LinMot RS01 (rotary part of the linear rotary motor PR01) the FeedbackResolution is 360’000.
  • Page 128: Realtime Channel

    Following the recommended configuration of the real-time channel. If the Realtime channel is configured with a list of IDNs the LinMot StatusWord, StateVar, the velocity feedback (S-0-0040), torque/force feedback (S-0-0084) and the effective current (S-0-0389) can also be mapped directly as part of the real-time process data.
  • Page 129: Homing (Linear Motors)

    Setup the homing mode Sensor: Make sure to keep the velocity i_lrVel low for best accuracy and set i_lrOffset to move away from the mechanical stop afterwards. In a cyclic task trigger i_xSensor. E.g. as follows: NTI AG / LinMot Page 129 of 205...
  • Page 130: Drive-Based Homing (S-0-0148)

    Use the function block FB_SercosWriteServiceData! Using the FC_SercosWriteServiceData will interrupt the PLC task until the homing has been completed. Example sequence that is used in the example project (see chapter 10.1 Overview). … … Page 130 of 205 NTI AG / LinMot...
  • Page 131: Parameter Access

    PLC Commissioning 10.5 Parameter Access Every parameter and variable in a LinMot system has its own UPID (Unique Parameter ID). Every UPID is mapped to its own manufacturer specific IDN to access it via the sercos service channel. UPIDs are mapped according to the following table:...
  • Page 132: Read Ram Parameter Example

    PLC Commissioning 10.5.2 Read RAM Parameter Example To read the RAM value of a LinMot parameter the function FC_SercosReadServiceData (see Schneider help) can be used. PROGRAM SR_Main bStartReadIDN: BOOL := diRetVAL: DINT; i_stAxisId DRV_SercDrv.stLogicalAddress; wIDN: DWORD 16#1BF38000; // UPID 1BF3h (Max Read Out Motor Temp, Offset = -50, Scale = 0.9803…°C)
  • Page 133: Write Ram Parameter Example

    PLC Commissioning 10.5.3 Write RAM Parameter Example To write the RAM value of a LinMot parameter the function FC_SercosWriteServiceData (see Schneider help) can be used. PROGRAM SR_Main bStartWriteIDN: BOOL := diRetVAL: DINT; i_stAxisId DRV_SercDrv.stLogicalAddress; wIDN: DWORD 16#13A58000; // UPID 13A5h (Integrator Limit) dwIDNDataOUT: DWORD := 3000;...
  • Page 134: Enable/Disable Drive Warnings

    Otherwise it is also possible to disable warnings on the drive side: Attention: Be aware that some of the warnings of a LinMot drive can indicate an upcoming error. So, make sure you have good reasons to disable warnings on the drive, e.g. Motor Hot Sensor or Drive Hot.
  • Page 135: Drive Profile: Codesys Softmotion, Cia402

    (s) Image Source: http://www.raspberrypi.org/ EtherCAT is the real-time Ethernet network originally developed by Beckhoff. The LinMot acts as Slave in this network and is implemented with the standard ASIC ET1100 from Beckhoff. For further information on the EtherCAT fieldbus please visit: http://www.ethercat.org/...
  • Page 136: Configuration And Connection Of The Linmot Drive

    It is assumed that the motor connected to the drive is already configured. Use the Motor Wizard inside LinMot-Talk to setup the motor (Menu -> Drive -> Motor Wizard): Make sure that you select a homing mode in the Motor Wizard as with the DS (DS402) interface a drive based homing is possible (e.g.
  • Page 137: Xml File

    The drive is connected to the EtherCAT network using the X17 (IN) & X18 (OUT) connectors. The below pictures show the ports of an E1250-DS-UC drive. On all other LinMot drives supporting EtherCAT DS the ports are named the same (X17 & X18) but they may be placed differently on the drive housing.
  • Page 138: Plc Setup

    11.3 PLC Setup 11.3.1 EtherCAT Device Description File XML The EtherCAT device description file (XML) is located by default in the LinMot-Talk installation path: C:\Program Files (x86)\LinMot\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\EtherCAT\XML Install the XML in CODESYS by selecting “Tools > Device Repository”.
  • Page 139 3. Right-Click on the added drive (e.g. C1250_DS_XS_1S…) and select Add SoftMotion CiA402 Axis Select Ok in the following pop up. 4. Move to the tab Scaling/Mapping and set 10’000 increments per 1 motor turn You are now ready to use the axis. NTI AG / LinMot Page 139 of 205...
  • Page 140: Check Eoe Settings

    E.g. to change drive settings or for monitoring and tracing. If not required, this feature can be disabled. LinMot drives do NOT support the DHCP mode yet. A fix IP must be assigned or the EoE feature must be completely disabled (disable Virtual Ethernet Port).
  • Page 141: Homing

    To home the axis using the drive controlled homing procedure the function block MC_Home (library SM3_Basic) can be used. Executing this function block will start the homing procedure defined with the Motor Wizard of LinMot-Talk (e.g. Mechanical Stop Negative Search). The Position input of the function block defines the home position of the axis, e.g.
  • Page 142: Visualization

    PLC Commissioning 11.5 Visualization In the example project the VISU_NEW_SMC_StartupDrive (SM3_Basic) template is used Page 142 of 205 NTI AG / LinMot...
  • Page 143: Parameter Access

    Maximal Current DataLength = 4 UPID: 13A6h Index = 16#2000 + 16#13a6 = 16#33a6 Type: SInt32 = DINT SubIndex = 1 Scale: 0.001 A Value = 1A / 0.001A (scale) = 1’000 NTI AG / LinMot Page 143 of 205...
  • Page 144: Add Additional Parameters Or Variables To The Process Data

    It is possible to add additional parameters or variables of the drive to the Process data PDO for cyclical write or read access. Make sure to enable the user defined inputs/outputs PDO if required: Page 144 of 205 NTI AG / LinMot...
  • Page 145 3. In the Select Item From Object Dictionary window enter the name, the UPID as Index and set the Datatype to DINT (as the Demand Current is of type SINT32) 4. Click OK to finish NTI AG / LinMot Page 145 of 205...
  • Page 146 3. In the Select Item From Object Dictionary window enter the name, the UPID as Index and set the Datatype to DINT (as the Maximal Current is of type SINT32) 4. Click OK to finish Page 146 of 205 NTI AG / LinMot...
  • Page 147: Drive Profile: B&R Nc Motion Using The Sdc Interface

    12 Drive Profile: B&R NC Motion using the SDC interface 12.1 Overview This chapter shows how a LinMot C1250-PL-XC-1S drive (with Powerlink interface) can be integrated and setup in a B&R environment as motion axis (ACP10 > SDC > LinMot).
  • Page 148: Compatibility Linmot_Sdc <> Acp10 Arnc0

    12.2 Compatibility LinMot_SDC <> ACP10 ARNC0 The following table lists the dependencies of the LinMot_SDC library. LinMot_SDC < compatible with > ACP10 ARNC0 1.00.1 <-> 5.2.0 to 5.2.9 1.00.2 <-> 5.4.0 to 5.4.9 Page 148 of 205 NTI AG / LinMot...
  • Page 149: Configuration And Connection Of The Linmot Drive

    It is assumed that the motor connected to the drive is already configured. Use the Motor Wizard inside LinMot-Talk to setup the motor (Menu -> Drive -> Motor Wizard): Make sure that you select “No Drive Homing” as homing mode in the Motor Wizard as with the SDC interface the motor is homed within the PLC.
  • Page 150: Xdd File

    The drive is connected to the Powerlink network using the X17 (IN) & X18 (OUT) connectors. The below pictures show the ports of an E1250-PL-UC drive. On all other LinMot drives supporting Powerlink the ports are named the same (X17 & X18) but they may be placed differently on the drive housing.
  • Page 151: Short Description Of The Linmot Sdc Interface Function Block

    12.4 Short Description of the LinMot SDC interface function block 12.4.1 Principle of Operation The LM_SdcIf function block acts as interface between the LinMot drive and the B&R SDC (Smart Device Controller) interface. On top of the SDC interface the ACP10 Manager is located that manages the ACP10 axes.
  • Page 152: Lm_Sdcif (Interface Function Block)

    The default values of the parameters in the table with blue background color are set to be used with a LinMot linear motor. This default values and the settings done in chapter 12.8 result in 1um per Unit and 10um actual position resolution.
  • Page 153: Prerequisites

    1. The project you are using must already have the PLC type setup. Otherwise please follow the B&R wizard for creating a new project 2. The libraries from LinMot (LinMot v2.10.0 or later & LinMot_SDC) must be installed in the project. Check compatibility with ACP10 ARNC0 in chapter 12.2 Compatibility LinMot_SDC <> ACP10 ARNC0 You may want to create a separate package for testing (E.g.
  • Page 154: Automation Studio Physical View

    The required XDD-file can be found in the following folder (default): C:\Program Files\LinMot\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\POWERLINK\XDD In the Hardware Catalog search for the LinMot drive (e.g. C1250...) and drag&drop it onto the Powerlink interface (PLK). Alternatively select the Product Group 3 Party Devices >...
  • Page 155: Configuration

    PLC Commissioning 12.6.2 Configuration In the configuration of the LinMot slave module (right-click on device > Configuration) the following channels must be selected: Set the Cyclic transmission of all channels marked with a red exclamation mark to Read or to Write respectively.
  • Page 156: I/O Mapping

    Right-click on the device and open I/O mapping. The inputs and outputs of the modules are mapped to the axis structure (datatype tstLM_Axis). In the actual example the used PV gAxis01_LM is defined in the Global.var as data type tstLM_Axis: Map the channels to the process variables as shown below Page 156 of 205 NTI AG / LinMot...
  • Page 157: Powerlink Interface And Plc Configuration

    Powerlink cycle time) and tolerance to 0 (Important!) Note: Other cycle times are possible too. Just make sure that Cyclic #1 Duration and Powerlink Cycle Time are set the same (e.g. 2000us). NTI AG / LinMot Page 157 of 205...
  • Page 158: Add A B&R Drive To Generate All Nc Object Specific Requirements Automatically

    (gAxis01 in this example) and click Finish at the end. Now all required libraries for NC objects are added to the project. Also, the NC manager configuration and the NC mapping are created. Page 158 of 205 NTI AG / LinMot...
  • Page 159 PLC Commissioning 3. Delete the just created drive (right-click > Delete) NTI AG / LinMot Page 159 of 205...
  • Page 160: Automation Studio Configuration View

    Add a new NC mapping by drag&drop ACP10 Mapping Table from the Toolbox – Object Catalog Attention: Assign a name that is different to Acp10map.ncm or you will later not be able to add a new NC object. E.g.name it Acp10map1.ncm Page 160 of 205 NTI AG / LinMot...
  • Page 161 Double-click on the NC manager configuration. Then right-click on the POWERLINK interface (or anywhere else in the NC manager configuration) and select “Insert Interface” Select Smart Device Controller (SDC) and click OK NTI AG / LinMot Page 161 of 205...
  • Page 162: Add New Nc Object

    Init Parameter table for this axis. In this example gAxis01i ACOPOS Parameter: ACOPOS Parameter table for this axis. In this example gAxis01a Additional Data: Name of SDC HW PV. In this example gAxis01_HW as defined in Global.var Page 162 of 205 NTI AG / LinMot...
  • Page 163: Add Textsystem

    If you don’t want to use the logger functionality this chapter can be skipped. If not available first add Project Languages from the Toolbox to the project (in Logical View) and set it up: Add a new TextSystem Configuration from the Toolbox: NTI AG / LinMot Page 163 of 205...
  • Page 164 Open the TextSystem Configuration and set it up by selecting the *.tmx file just copied. To do so right-click on “Tmx file for target 1” and select Add New Dynamic Node. Click in the empty Value field and choose xxx.LinMot_SDC.txtLinMot_SDC.tmx Page 164 of 205 NTI AG / LinMot...
  • Page 165: Automation Studio Logical View: Linear Motor Example

    Copy the sample program Sample_Linear_ST from the demo project (see chapter 12.1) and past it to the Logical View, e.g. to the package LinMot_SDC_Demo: 12.8.2 ACOPOS Parameter Table For a LinMot linear motor the parameters must be set exactly as shown below. This will result in a resolution of 1um per Unit. NTI AG / LinMot...
  • Page 166: Init Parameter Table

    Set all digital input active levels to ncACTIV_HI. Set Units in Encoder_if to 10000 (> 1um per Unit with LinMot linear motor) Set t_predict and t_total to 5 times Powerlink cycle time each > 800us * 5 = 0.004 s As the limits depend on the application and the motor type used it is recommended to start with some moderate values.
  • Page 167: Check Init Parameters Of The Sdc Function Block

    Open Main_Linear.st and check if the axis, SDCHW and log names as well as the other parameters in stConfig are set correctly. 12.8.5 Assign the example program to Cyclic #1 In the Physical View Right-click X20CP1584 > Software and assign the example program to Cyclic #1 NTI AG / LinMot Page 167 of 205...
  • Page 168: Automation Studio Logical View: Rotary Motor Example

    PLC Commissioning 12.9 Automation Studio Logical View: Rotary Motor Example This chapter shows the integration of a rotary motor. In this example a RS01 (rotary part of a LinMot PR01 linear rotary motor). To add a second axis, repeat chapter 12.6 and 12.7 and use another name, e.g. gAxis02.
  • Page 169: Acopos Parameter Table

    PLC Commissioning 12.9.2 ACOPOS Parameter Table For a rotary motor the parameters must be set in relation to the settings on the LinMot drive. The following examples will result in a resolution of 0.001 degree per Unit. The parameters SCALE_ENCOD_INCR and SM_SCALE_STEP must be set to the number of ticks shown in the LinMot-Talk motor wizard.
  • Page 170 Example 2: EC02 motor This motor has 524288 ticks per motor revolution. For this reason, the parameters SCALE_ENCOD_INCR and SM_SCALE_STEP must be set to 524288. The unit is the same as before: 0.001 degree Page 170 of 205 NTI AG / LinMot...
  • Page 171: Init Parameter Table

    Set t_predict and t_total to 5 times Powerlink cycle time each > 800us * 5 = 0.004 s As the limits depend on the application and the motor type used it is recommended to start with some moderate values. NTI AG / LinMot Page 171 of 205...
  • Page 172: Check Init Parameters Of The Sdc Function Block

    For a LinMot RS01 rotary motor the parameter SM_SCALE_STEP is set to 360000. For a LinMot EC02 rotary motor the parameter SM_SCALE_STEP is set to 524288. For any other motor please check the Position Feedback in the LinMot-Talk Motor Wizard. 12.9.5 Assign the example program to Cyclic #1 In the Physical View Right-click X20CP1584 >...
  • Page 173: Homing

    12.10.1 Linear Motor A possible setup for homing mode ncBlock_DS: 12.10.2 Rotary Motor LinMot rotary motors (RS01 & EC02) have a single turn absolute encoder. Therefore, as homing mode ncHOME_OFFSET can be used. Note: It is recommended to home axes with absolute encoders first before switching the motor on.
  • Page 174: Reference Switch (Mchome_Abs_Switch)

    E.g. for X4.5 set the parameter Range Indicator 1 Minuend UPID to 1C90h (Inputs State Bit 0 (X4.5)) instead of 1C85h. See screenshot below. It is possible to connect a hardware switch to the LinMot drives X4 inputs (e.g. X4.5). The state of the digital input is then passed through to iReference of the SDC DI/DO Interface.
  • Page 175 PLC Commissioning As example we want to use the following homing mode (see B&R Automation Studio Help > search for mcHOME_ABS_SWITCH): Possible setup of the homing mode: NTI AG / LinMot Page 175 of 205...
  • Page 176: Test

    PLC Commissioning 12.11 Test After the LinMot drive is integrated as shown in the chapters before, the project can be compiled and downloaded to the PLC. For testing purposes, the Test tool in Automation Studio can be used. Open the Test from the NC mapping: For proper operation select Parallel Mode: 12.11.1 Switch On...
  • Page 177: Homing

    To home the axis (in this example a linear motor to hard stop) use the Homing command. A possible homing configuration with mode ncBLOCK_DS 12.11.3 Error Acknowledge To acknowledge errors, press the button Acknowledge Error as long as an error is shown in the Watch: NTI AG / LinMot Page 177 of 205...
  • Page 178: Parameter Access

    12.12 Parameter Access 12.12.1 Parameter access by LMcf_ParaAccess function block Every parameter and variable in a LinMot system has its own UPID (Unique Parameter ID). Read and write access is possible using the LMcf_ParaAccess function block from the library LinMot.
  • Page 179: Parameter Access By Sdo Commands

    Alternatively, also access by SDO is possible. For SDO access the B&R library AsEPL is required. Function blocks: EplSDORead() & EplSDOWrite() The Index specifies the LinMot parameter (UPID) to address. It is UPID + 16#2000. The Sub-Index specifies the command which is performed...
  • Page 180 Type: SInt32 = DINT = 4 Bytes Scale: 0.001 A pDevice := pointer to POWERLINK interface, e.g. ADR(‘IF3’) node := 1 (Node ID of the LinMot drive) index := 13222 = 16#33a6 = 16#2000 + 16#13a6 subindex := 1 (access RAM value) pData := pointer to data buffer, e.g.
  • Page 181: Add Additional Parameters Or Variables To The Process Data

    As Init value in the “Device specific parameters” set the UPID number (e.g. Maximal Current has UPID 16#13A6 > 5030 decimal) of the parameter you want to access. Afterwards you can assign a PV in the I/O configuration of the device. NTI AG / LinMot Page 181 of 205...
  • Page 182: Errors (Lm_Sdcif Outputs)

    • uiErrorCode output greater than 0 (zero) A list of possible uiErrorCode values can be found in either the MS_SW manual or within LinMot-Talk (Menu > Manuals > Errors > MC Layer). It is possible to read the error message (English only) as STRING using the function block LMcf_GetErrorText from the library LinMot.
  • Page 183: Drive Profile: Omron Sysmac Studio, Coe Ds402

    (s) Image Source: http://www.omron.com/ EtherCAT is the real-time Ethernet network originally developed by Beckhoff. The LinMot acts as Slave in this network and is implemented with the standard ASIC ET1100 from Beckhoff. For further information on the EtherCAT fieldbus please visit: http://www.ethercat.org/...
  • Page 184: Configuration And Connection Of The Linmot Drive

    It is assumed that the motor connected to the drive is already configured. Use the Motor Wizard inside LinMot-Talk to setup the motor (Menu -> Drive -> Motor Wizard): Only select a homing mode in the Motor Wizard in case of a drive-based homing (e.g. Mechanical Stop Negative Search).
  • Page 185: Xml File

    13.2.2 XML File Install the XML file that is part of the LinMot-Talk software/firmware you are using. The most recent device files are always part of the newest LinMot-Talk software. They are located by default: • EtherCAT: \\LinMot-Talk X.X Build XXXXXXXX\Firmware\Interfaces\EtherCAT\XML\NTIL_CiA402_...xml 13.2.3 EtherCAT Connection...
  • Page 186: Plc Setup

    PLC Commissioning 13.3 PLC Setup 13.3.1 EtherCAT Device Description File XML The most recent EtherCAT XML device description (ESI) file is always part of the newest LinMot-Talk software. They are located by default: C:\Program Files (x86)\LinMot\LinMot-Talk X.X Build XXXXXXX\Firmware \Interfaces\EtherCAT\XML\NTIL_CiA402_...xml Copy this file to your local Sysmac Studio installation path, e.g.:...
  • Page 187: Set Node Address By Address Selector On Device

    13.3.2.1 Set node address by address selector on device This is the most popular way because it is user-friendly to maintenance people. Depending on the LinMot-Device the address selector is designed as Hex- or DIP-Switch. For C1100 devices an external address selector is available.
  • Page 188: Set Node Address By Parameter On Device

    13.3.2.2 Set node address by parameter on device The node address can be defined by parameter too. 1. Select Parameter 2. Enter desired node address within the allowed range of your Omron NJ PLC Page 188 of 205 NTI AG / LinMot...
  • Page 189: Set Node Address By Ethercat Master

    3. Open the ”Slave Node Address Writing”-Window by right-click Master in the Network configuration and select Write Slave Node Address 4. Enter the desired node address within the allowed range of your Omron NJ PLC and reboot drive. NTI AG / LinMot Page 189 of 205...
  • Page 190: Scanning The Ethercat For New Devices

    PLC Commissioning 13.3.3 Scanning the EtherCAT for new Devices Follow this steps to add the LinMot drive to your OMRON PLC. 1. When Online with the PLC double-click EtherCAT under Configuration and Setup in the Multiview Explorer. The EtherCAT Edit Tab page is displayed.
  • Page 191: Create A Motion Axis And Link It To Your Physical Linmot Axis

    PLC Commissioning 13.3.4 Create a motion axis and link it to your physical LinMot axis Follow this steps to use the LinMot axis as a motion axis on your OMRON PLC. 1. Create a motion axis: When Offline with the PLC right-click Axis Setting →...
  • Page 192 Select Detailed Settings and assign Out- and Inputs as shown below. (Entries marked with a star are the minimal entries required from Sysmac. In addition, Target velocity should be assigned to achieve better/smoother performance of the LinMot). 6. OPTIONAL: When using drive-based-homing, assign additional PDO’s: →...
  • Page 193: Setting Up The Motion Axis

    Set Travel Distance to 10’000:1. 3. Set axis velocity limits: Choose Operation Settings and set your desired values into Maximum velocity fields. 4. Download program to your PLC: Rebuild Controller and then go Online and Transfer NTI AG / LinMot Page 193 of 205...
  • Page 194: Drive Based Homing

    In general, the easiest way to home a linear motor is to use homing routines predefined in the servo drive. LinMot supports the homing mode via DS402. Hence Sysmac currently has limitations by supporting this mode, drive-based-homing can be executed as described below.
  • Page 195: Function Blocks Required On Sysmac

    With this function block, the position lag on the motion axis will be reset. Variables to declare: Data type Initial Value Function block MC_ResetFollowingError 13.4.2.3 MC_HomeWithParameter With this function block, the motion axis (not the LinMot axis!) will be homed. Variables to declare: Data type Initial Value Function block MC_HomeWithParameter Homing Parameter...
  • Page 196: Homing Procedure On Sysmac

    4. After homing wait until the axis is at standstill (not oscillating due mechanical construction) and clear the following-error of motion axis. It must be cleared because Sysmac does not update the axis position during drive-based-homing. Malfunction can occur. Page 196 of 205 NTI AG / LinMot...
  • Page 197: Drive Reset

    PLC Commissioning 5. Execute homing of motion axis. To be accurate with the LinMot drive position, its actual position will be taken as Offset. 6. Change operation mode of drive Value 8 switches drive back to Position/Velocity-Streaming-Mode. 7. Reset the Home within the Ctrl Word Parameter Force Mask 13.5 Drive Reset...
  • Page 198: Parameter Access

    PLC Commissioning 13.6 Parameter Access Parameters of the LinMot drive can be accessed using the Omron function block EC_CoESDORead and EC_CoESDOWrite which are part of Sysmac library. More information about this function blocks can be found in the Instructions Reference Manual (W502) from Omron: https://industrial.omron.eu/en/home...
  • Page 199: Add Additional Parameters Or Variables To The Process Data (Pdo Map)

    With Omron NJ it is not possible to add additional parameters or variables of the drive to PDO for cyclical write or read access. Currently Sysmac does not support User Defined Inputs nor User Defined Outputs. So far the editable entries cannot be used. NTI AG / LinMot Page 199 of 205...
  • Page 200: Troubleshooting

    PLC Commissioning 14 Troubleshooting The following points should be checked if there are any troubles getting the LinMot drive to connect to the fieldbus or using the LinMot PLC libraries. • Is the fieldbus connected to the correct connector of the LinMot drive? E.g.
  • Page 201 • If possible, use a clean configuration of the LinMot drive. 1. Install / reinstall the firmware or set the drive to factory settings using LinMot-Talk 2. Set up the motor using the motor wizard 3. Set the fieldbus specific parameters (e.g. node address, IP, …) Now check again if the problem still exists •...
  • Page 202: Appendix I: Basic Position Control Loop Tuning

    Appendix I: Basic Position Control Loop Tuning Tuning the position loop of a LinMot drive depends a lot of the application the motor is used for. An application note about position loop tuning is available with document reference 0185-1156 (http://shop.linmot.com).
  • Page 203 PLC Commissioning 2. After finishing the Motor Wizard, rebooting the drive firmware, enabling and homing the motor you can start moving the motor. With the built-in oscilloscope in LinMot-Talk you can trace the movement of the motor. Select the Default oscilloscope and start it by pressing the green arrow The green channel shows the Difference Position (Position Error) you may want to minimize.
  • Page 204: Notes

    PLC Commissioning Notes Page 204 of 205 NTI AG / LinMot...
  • Page 205: Contact & Support

    PLC Commissioning Contact & Support SWITZERLAND NTI AG LinMot & MagSpring Bodenaeckerstrasse 2 CH-8957 Spreitenbach Sales and Administration: +41 56 419 91 91 office@linmot.com Tech. Support: +41 56 544 71 00 support@linmot.com Fax: +41 56 419 91 92 Web: http://www.linmot.com/ LinMot USA Inc.

Table of Contents