E 861_User_PZ205 861 User PZ205E121 Manual
E-861_User_PZ205E121_User%20Manual
User Manual:
Open the PDF directly: View PDF
.
Page Count: 227
| Download | |
| Open PDF In Browser | View PDF |
PZ205E User Manual E-861 NEXACT® Controller Release: 1.2.1 Date: 26 July 2010 This document describes the following product: ■ E-861.1A1 NEXACT® Controller, 1 channel, linear encoder © Physik Instrumente (PI) GmbH & Co. KG Auf der Römerstr. 1 ⋅ 76228 Karlsruhe, Germany Tel. +49 721 4846-0 ⋅ Fax: +49 721 4846-299 info@pi.ws ⋅ www.pi.ws About This Document Users of this Manual This manual is designed to help the reader to operate the E-861 NEXACT® Controller. It assumes that the reader has a fundamental understanding of basic servo systems, as well as motion control concepts and applicable safety procedures. The manual describes the physical specifications and dimensions of the E-861 as well as the software and hardware installation procedures and the commands which are required to put the associated motion system into operation. Conventions The notes and symbols used in this manual have the following meanings: WARNING Calls attention to a procedure, practice or condition which, if not correctly performed or adhered to, could result in injury or death. ! CAUTION Calls attention to a procedure, practice, or condition which, if not correctly performed or adhered to, could result in damage to equipment. NOTE Provides additional information or application hints. The software tools and the mechanics which might be mentioned within this documentation are described in their own manuals. All documents are available as PDF files. Updated releases are available for download at www.pi.ws (http://www.pi.ws) or via email: contact your Physik Instrumente Sales Engineer or write info@pi.ws (mailto:info@pi.ws). Related Documents E861_GCSLabVIEW_PZ208E E-861_PIGCS_2_0_DLL_SM152E IP1000_B_EN.pdf (GEMAC interpolation chip) PIMikroMoveUserManual_SM148E GCSData_User_SM146E PiStageEditor_SM144E All documents are available as PDF files on the distribution CD. Updated releases are available for download at www.pi.ws or via email: contact your Physik Instrumente sales engineer or write info@pi.ws. Physik Instrumente (PI) GmbH & Co. KG is the owner of the following company names and trademarks: PI®, PiezoWalk®, NEXACT®, PIMikroMove The following designations are protected company names or registered trademarks of third parties: Microsoft, Windows, LabVIEW The products described in this document are in part protected by the following patents: German Patent No. P4408618.0 Copyright by 1999–2010 Physik Instrumente (PI) GmbH & Co. KG, Karlsruhe, Germany The text, photographs and drawings in this manual enjoy copyright protection. With regard thereto, Physik Instrumente (PI) GmbH & Co. KG reserves all rights. Use of said text, photographs and drawings is permitted only in part and only upon citation of the source. First printing 26 July 2010 Document Number PZ205E, BRo, KSch, Release 1.2.1 E-861_User_PZ205_121.doc Subject to change without notice. This manual is superseded by any new release. The newest release is available for download at www.pi.ws (http://www.pi.ws). Contents 1 Introduction 1.1 1.2 1.3 1.4 1.5 1.6 2 3 Prescribed Use.................................................................................... 5 Safety Precautions .............................................................................. 6 Unpacking ........................................................................................... 8 Additional Components ....................................................................... 9 Motion System Requirements ............................................................. 9 Software Description ......................................................................... 10 First Steps 2.1 2.2 2.3 Reference Mode ................................................................................. 29 Perform a Reference Move ................................................................ 30 Set Absolute Position ......................................................................... 30 Using Trigger Input and Output......................................................... 31 Updates............................................................................................. 31 3.7.1 3.7.2 3.7.3 4 USB Interface ..................................................................................... 28 Baud Rate Settings............................................................................. 28 Address Settings ................................................................................ 29 Referencing....................................................................................... 29 3.5.1 3.5.2 3.5.3 3.6 3.7 Front Panel Elements ......................................................................... 23 DIP Switch Settings ............................................................................ 24 Rear Panel Elements.......................................................................... 26 Installing the E-861 ........................................................................... 26 Installing the Software on the Host PC ............................................. 27 Connecting Controller or Daisy-Chain Network to Host PC .............. 27 3.4.1 3.4.2 3.4.3 3.5 Software Updates ............................................................................... 31 Updating PIStages2.dat...................................................................... 32 Firmware Updates .............................................................................. 32 Controller Parameters 4.1 4.2 4.3 23 Front and Rear Panel Elements........................................................ 23 3.1.1 3.1.2 3.1.3 3.2 3.3 3.4 12 Requirements for Closed-Loop Operation and Custom Systems ..... 12 Getting Started .................................................................................. 12 Example for Commanding Motion..................................................... 20 Details of Operation 3.1 4 35 General Information .......................................................................... 35 What to Consider for First Handling of Parameter Settings .............. 35 How to Store Parameter Settings...................................................... 37 4.3.1 Storing Parameter Settings to Volatile Memory Using Expanded Single Axis Window ...................................................................................... 37 4.3.2 Storing Parameter Settings to Non-Volatile Memory Using PIMikroMove Main Window .......................................................................... 38 4.3.3 Storing Parameters to Volatile and Non-Volatile Memory via Commands.................................................................................................... 40 4.4 4.5 5 Parameter List................................................................................... 41 Default-Stage-N Parameter Settings................................................. 49 System Description 5.1 5.2 5.3 Basic Elements ................................................................................. 51 Accessible Items and Their Identifiers .............................................. 53 Modes of Operation........................................................................... 54 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.4 51 Servo Modes....................................................................................... 55 Motion Modes ..................................................................................... 56 Changing Motion and Servo Mode ..................................................... 59 PiezoWalk Driving Mode .................................................................... 63 Application Notes................................................................................ 67 Control Basics ................................................................................... 68 5.4.1 5.4.2 5.4.3 5.4.4 Control Value Generation ................................................................... 68 Trajectory Generation......................................................................... 71 Control Algorithm ................................................................................ 76 Motion Error Handling......................................................................... 77 6 Joystick Control 79 7 Working with Controller Macros 82 7.1 7.2 7.3 7.4 Defining Macros ................................................................................ 82 Starting Macro Execution .................................................................. 84 Start-Up Macro.................................................................................. 84 Preparing for Stand-Alone Preparation ............................................. 85 8 Data Recording 88 9 Customizing the System 89 9.1 9.2 9.3 9.4 9.5 Parameters for Customizing.............................................................. 90 Travel Range Adjustment.................................................................. 92 Tuning PID Control Parameters ........................................................ 95 How to Create a New Stage Type in the PI Stages Database.......... 98 Adjustment for Custom Sensor ......................................................... 99 9.5.1 9.5.2 9.5.3 9.5.4 Servo Loop Input Factor ..................................................................... 99 Adjustment for Custom Sensor Using Custom Interpolation Board . 100 GEMAC Parameters......................................................................... 105 Custom Sensor Using GEMAC Interpolation Board......................... 106 10 GCS Commands 107 10.1 Format............................................................................................. 107 10.1.1 Notation ............................................................................................ 107 10.1.2 GCS Syntax ...................................................................................... 107 10.1.3 Target and Sender Address ............................................................. 110 10.2 Command Survey ........................................................................... 111 10.3 Command Reference (alphabetical) ............................................... 114 10.4 Error Codes..................................................................................... 192 11 Troubleshooting 207 12 Customer Service 210 13 Old Equipment Disposal 211 14 Technical Data 212 14.1 Specifications .................................................................................. 212 14.2 Mounting Hole Pattern .................................................................... 214 14.3 Pin Assignments ............................................................................. 215 14.3.1 14.3.2 14.3.3 14.3.4 14.3.5 14.3.6 14.3.7 14.3.8 14.3.9 15 Index Motor Socket..................................................................................... 215 Sensor Socket .................................................................................. 216 RS-232 In and RS-232 Out Sockets ................................................ 216 USB Socket ...................................................................................... 217 I/O Socket ......................................................................................... 218 C-170.IO Cable................................................................................. 219 Joystick Socket ................................................................................. 220 Joystick Y-Cable ............................................................................... 221 24 V DC Socket ................................................................................ 221 222 Introduction 1 Introduction The E-861 NEXACT® controller is designed to drive a single-axis PiezoWalk® system with NEXACT® linear drive in open-loop or closedloop operation. NEXACT® PiezoWalk® technology overcomes the limitations of conventional nanopositioning drives and combines virtually unlimited travel ranges with high stiffness in a very small package. Furthermore, NEXACT® linear drives provide piezo class resolution (far below one nanometer) and millisecond responsiveness. The special drive design also reduces the operating voltage to 45 V and below. Two motion modes are provided: To move the runner over longer distances a "nanostepping mode" is used, whereas for distances smaller than one step, the "analog mode" enables high-dynamics positioning with resolutions far below one nanometer. According to the desired motion modes, the E-861 NEXACT® controller performs coordinated control of the four voltage channels required for the NEXACT® linear drive. Communication with the E-861 is provided either through the RS-232 or the USB interface. For manual control, the unit can be operated with a joystick. Flexible Automation The E-861 NEXACT® Controller offers a number of features to facilitate automation and handling tasks in research and industry. For example, macros can be stored in the non-volatile memory for later recall. Stand-alone capability is provided by a user-programmable autostart macro to run automation tasks at power-up (no run-time computer communication required!). For easy synchronization of motion with internal or external trigger signals four input and four output lines are provided. Multi-Axis Control Up to 16 E-861 NEXACT® Controllers can be daisy-chained and addressed via the same interface. The networking feature allows the user to start out with one controller and add more units later for multi-axis setups. Command Set E-861 NEXACT® Controllers can be operated using the PI General Command Set (GCS). PI-GCS allows networking of different controller units, both for piezo-based and motorized positioning units, with minimal programming effort. Software / Programming In addition to the user software for setup, system optimization and operation, comprehensive LabVIEW and DLL libraries are provided to ease programming custom applications. www.pi.ws E-861 PZ205E Release 1.2.1 Page 4 Introduction 1.1 Prescribed Use Based on their design and realization, E-861 NEXACT® Controller are intended to drive capacitive loads, in the present case, piezoceramic actuators. E-861s must not be used for applications other than stated in this manual, especially not for driving ohmic (resistive) or inductive loads. Observe the safety precautions given in this User Manual. E-861s can be operated in closed-loop mode using incremental position sensors. Consult the product specifications of the mechanics with which the E-861 is to be operated to see what kind of position sensor is present. The E-861 may only be used for applications suitable according to the device specifications. Operation other than instructed in this User Manual may affect the safeguards provided. The verification of the technical specifications by the manufacturer does not imply the validation of complete applications. In fact the operator is responsible for the process validation and the appropriate releases. The E-861 is a laboratory apparatus as defined by DIN EN 61010. It meets the following minimum specifications for safe operation: ■ Indoor use only ■ Altitude up to 2000 m ■ Temperature range 5°C to 40°C ■ Max. relative humidity 80% for temperatures up to 31°C, decreasing linearly to 50% relative humidity at 40°C ■ Line voltage fluctuations not greater than ±10% of the line voltage ■ Transient overvoltages as typical for public power supply Note: The nominal level of the transient overvoltage is the standing surge voltage according to the overvoltage category II (IEC 60364-4443). ■ Degree of pollution: 2 These data are no limitations for the specifications in the technical data table. www.pi.ws E-861 PZ205E Release 1.2.1 Page 5 Introduction 1.2 Safety Precautions Controller DANGER Procedures which require opening the case should be carried out by authorized, qualified personnel only. Disconnect the controller from power when opening the case, and when resetting internal switches or jumpers. When the controller must be operated with the case open, voltages of up to 48 VDC and currents of up to 2 A can be exposed. Do not touch internal conductors. WARNING⎯READ INSTRUCTION Install and operate the E-861 NEXACT® Controller only when you have read the operating instruction. Keep the instructions readily available close to the device in a safe place. If the instructions are lost or have become unusable, ask the manufacturer for a new copy. Add all information given by the manufacturer to the instructions, e.g. supplements or Technical Notes. WARNING Connect the AC power cord of the external power supply to the wall socket (100 to 240 VAC). To disconnect the system from the supply voltage completely, remove the power plug from the wall socket. Install the system near the AC outlet and such that the AC power plug can be reached easily. WARNING All motion of the connected motors is software controlled, and software may fail. Defective software or improper operation of the software may result in unexpected motions. Be aware that some motorized positioners can generate large forces which can cause personal injury or other damage if not properly handled. www.pi.ws E-861 PZ205E Release 1.2.1 Page 6 Introduction ! CAUTION ! CAUTION ! CAUTION Place the system in a location with adequate ventilation to prevent internal heat build-up. Allow at least 10 cm (4 inches) clearance from the top and the rear of the unit and 5 cm (2 inches) from each side. Never connect the RS-232-IN and USB connectors of the same controller to a PC at the same time as this can cause damage to the controller. If no sensor is present in your system: ■ Do not switch servo on (SVO command) ■ Do not send commands for closed-loop motion, like MOV or MVR ■ Do not send the open-loop commands OMA and OMR, since they use a sensor, too Otherwise the connected mechanics can run into the hard stop at full speed, which may cause damage to your hardware setup. ! CAUTION ! CAUTION ! CAUTION www.pi.ws Incorrect E-861 parameter values may lead to improper operation or damage of your hardware. Be careful when changing parameters. The E-861 is equipped with a watchdog timer. This safety device resets the E-861 in case of software failure. Do not enable a joystick via command when no joystick device is connected to the controller hardware. Otherwise the corresponding controller axis may start moving and could damage your application setup. E-861 PZ205E Release 1.2.1 Page 7 Introduction CAUTION The boards inside the E-861 are ESD-sensitive (electrostatic discharge sensitive) devices. Observe all precautions against static charge buildup before handling these devices. Avoid touching circuit components, pins and PCB traces. Discharge any static electricity you may have on your body by briefly touching a conductive, grounded object before you touch any electronic assembly. ! Make sure that no conductive particles of any kind (metallic dust or shavings, broken pencil leads, loose screws) contact the device circuitry. Mechanics CAUTION Do not displace the moving platform of a NEXACT® stage or the runner of a NEXACT® linear drive manually! Manual displacement can cause irreparable damage to the piezo modules in the NEXACT® linear drives. 1.3 Unpacking Unpack the E-861 NEXACT® Controller with care. Compare the contents against the items covered by the contract and against the packing list. The following components are included: www.pi.ws ■ NEXACT® Controller (E-861.1A1) ■ Power Supply 24 V, 42 W (C-663.PS), with line cord (3763) ■ RS-232 null-modem cable for connecting controller and host PC (C-815.34) ■ RS-232 straight-through networking cable (C-862.CN) for daisy chain ■ USB cable (3 m, USB-A (m) / USB Mini-B (m)) for PC connection (000014651) and EMI-suppression ferrite (000015165) ■ E-861 Distribution CD, containing host software (see "Software Overview" (p. 10)), USB driver and manuals as PDF files (E-861.CD) ■ User Manual for E-861 in printed form (this document) E-861 PZ205E Release 1.2.1 Page 8 ! Introduction If parts are missing or you notice signs of damage, contact your PI representative or write to info@pi.ws immediately. Save all packing materials in case the product needs to be shipped again. 1.4 Additional Components Contact your PI representative or write an e-mail to info@pi.ws if you need the following additional components: 1.5 Order Number Description C-862.CN2 Long straight-through networking cable for daisy chain (interconnecting E-861 controllers on RS-232 bus), 180 cm C-819.20 Analog joystick, 2 axes C-819.20Y Y-cable for connecting two E-861s to joystick C-170.PB Pushbutton box with 4 buttons and 4 LEDs, for connection to the I/O socket (p. 218) C-170.IO Connector for I/O socket (p. 218), with cable, open end Motion System Requirements To start working with the E-861 NEXACT® controller, your motion system must include the following components: www.pi.ws ■ Power supply for E-861 ■ The mechanics (NEXACT® linear drive or stage) ■ A PC with Windows operating system (XP, Vista, 7.0) ■ Communication interface to the PC: A free COM port on the PC or A free USB interface on the PC ■ RS-232 null modem cable or USB cable to connect controller and host PC ■ E-861 CD with host software E-861 PZ205E Release 1.2.1 Page 9 Introduction 1.6 Software Description The table below lists the software tools which are on the E-861 product CD with application recommendations. For more information see the corresponding software manuals. Software Tool Supported Operating System Short Description Recommended for PITerminal Windows PITerminal is a Windows GUI which can be used as a simple terminal with almost all PI controllers. Users who want to send the commands of the PI General Command Set (GCS) directly. GCS Library Windows Customers who want to use a library for their applications. The dynamic version of the library is needed by the LabVIEW driver set and by PIMikroMove. LabVIEW drivers Windows Allows program access to the E-861 from languages like C++. The functions in the library are based on the PI General Command Set (GCS). Windows operating systems: PI_GCS2_DLL LabVIEW is a software tool (available separately from National Instruments) for data acquisition and process control. The E-861 LabVIEW software consists of a collection of virtual instrument (VI) drivers for the E-861 controller. This driver set supports the PI General Command Set (GCS). Included are VIs for GCS commands and high-level VIs for various tasks. PIMikroMove Windows PIMikroMove permits you to start your motion system—host PC, controller and stage(s)—immediately without the need to write customized software. It offers motion-control displays and features that in many cases make it unnecessary to deal with ASCIIformat commands. It also has a complete command input facility, which represents an easy way to experiment with various commands. PIMikroMove uses the GCS DLL described above to command the controller. Note that the program offers comprehensive online support. Users who want to test the equipment before or instead of programming an application and who want to learn how to use the commands. For motor controllers, PIMikroMove offers an easy way to optimize the servo parameters. PIStageEditor Windows GUI tool for adding, removing and editing stages (parameter sets) in stage-parameter files (DAT-files) used by the GCS library and the other host software from PI Users who want to check or edit the content of the stage databases used by the host software www.pi.ws E-861 PZ205E Release 1.2.1 Users who want to use LabVIEW for programming their applications based on the GCS. See the GCS LabVIEW manual of your controller for more information. Page 10 Introduction TMS320F28xx Updater www.pi.ws Windows The TMS320F28xx Updater firmware update program guides you through the update of the firmware for your E-861 system. E-861 PZ205E Release 1.2.1 Users who want to update the firmware. Page 11 First Steps 2 First Steps 2.1 Requirements for Closed-Loop Operation and Custom Systems Before you start with closed-loop operation make sure that the set controller parameters match: a) the properties of the mechanics b) the properties of the sensor used for position feedback c) your individual application If you use a custom stage you can use the Default-Stage-N stage database entry. This stage database entry contains parameter settings that you may have to adjust to match with your stage’s properties. See "Default-Stage-N Parameter Settings" (p. 49) for the parameter settings the Default-Stage-N stage database entry features. See “Customizing the System” (p. 89) for what parameters may need to be adjusted. See “How to Store Parameter Settings” (p. 37) for how to store parameters to volatile and non-volatile memory. In addition you have to check if the sensor properties of your custom stage match with the GEMAC parameters reflecting the sensor properties. Note that the GEMAC parameters are not part of a stage database entry. See “GEMAC Parameters” (p. 105) and "Adjustment for Custom Sensor" (p. 99) for details. 2.2 Getting Started To simplify your first steps with the NEXACT® system, it is recommended to use PIMikroMove (see the PIMikroMove Manual for more information). CAUTION Never connect the RS-232-IN and USB connectors of the same controller to a PC at the same time as this can cause damage to the controller. www.pi.ws E-861 PZ205E Release 1.2.1 Page 12 ! First Steps ! CAUTION If no sensor is present in your system, do not switch the servo on. Otherwise the connected mechanics can run into the hardstop at full speed which may cause damage to your hardware setup. NOTE It is recommended to check the parameter settings on the controller before a stage database entry is chosen during setting up a connection with PIMikroMove. If the parameter settings must not be changed, then press OK (instead of Assign -->) in the Select connected stages step, see figure of step 9b) below. It is possible to generate user-defined stage database entries. See "How to Create a New Stage Type in the PI Stages Database" (p. 98) for how to generate a new parameter set ( = stage database entry). Such a user-defined stage database entry will be available in PIMikroMove in the Select connected stages step. See "Storing Parameter Settings to Non-Volatile Memory Using PIMikroMove Main Window" (p. 38) if you wish to store these settings to the controller's non-volatile memory to make them power-up default settings. To start operation with the E-861 proceed as described below. Note that closed-loop operation is only possible if your system features a sensor. 1 Connect the NEXACT® stage to the "Motor" socket on the rear of the E-861. 2 If present, connect the NEXACT® stage to the "Sensor" connector on the rear of the of the E-861. 3 Starting operation for the first time, you should use the default DIP switch settings of the E-861 which are as shown in the figure below: Controller address = 1 Baudrate = 9600 baud Mode = Normal operation www.pi.ws E-861 PZ205E Release 1.2.1 Page 13 First Steps If you want to change the default settings, see "DIP Switch Settings" for details. 4 Connect the E-861 to the host PC. Use either the RS-232 interface (via the "RS-232 In" socket on the controller) or the USB interface and the corresponding cable which is included in delivery. Never connect both interfaces at the same time. 5 Connect E-861 and the included 24 VDC wide-range power supply (use the "24 VDC" socket on the E-861 rear panel). 6 Connect the power supply of the E-861 to the line power (100-240 VAC). The controller is powered on and immediately ready for operation (STA LED lights up permanently). 7 Start PIMikroMove on the host PC. See "Installing the Software on the Host PC" (p. 27) for installation. 8 Establish a connection to the E-861 controller from PIMikroMove. a) Select the E-861 controller in the Start up controller window, see figure below. www.pi.ws E-861 PZ205E Release 1.2.1 Page 14 First Steps This figure shows the Start up controller window at the Connect controller step. Here, the E-861 is physically connected via RS-232. 9600 baud is the factory default baud rate setting. The controller has address 1 as is determined by DIP switch settings at the controller’s front panel. b) Depending on the physical connection select the RS-232, FTDI USB, RS-232 Daisy Chain or USB Daisy Chain tab card in the Start up controller window. When using the USB interface for the first time, two FTDI USB drivers must be installed on the host PC. These drivers are provided on the E-861 CD in the \USB Driver directory. Note that with a daisy-chain there must be one controller with address 1. It is not required that this controller is directly connected to the host PC, i.e. this controller does not have to be the first controller of the daisychain. If there is no controller in a daisy-chain with address 1 an error message occurs when you try to setup a connection. See "Connecting Controller or Daisy-Chain Network to Host PC" (p. 27) for detailed information. c) For RS-232 connection choose the baud rate as preset by the DIP switch settings at the controller’s front panel. d) Press Connect in the Start up controller window to establish the connection. 9 Choose the stage type to be connected. Click Select connected stages on the E-861 menu of the PIMikroMove www.pi.ws E-861 PZ205E Release 1.2.1 Page 15 First Steps main window if the stage selection dialog for the next step does not open automatically. There are the following possibilities: a) The preset Current stage type in the Controller axes pane does not match your stage. b) The preset Current stage type does match your stage. Details: a) If the preset stage type is not to be used select the appropriate stage type in the Stage database entries list and press the Assign -> button for each axis. The selected stage types are now visible in the Controller axes pane. Set to: stage name occurs in the Action column, see figure below. To accept the selection and to close the dialog, press the OK button. The figure below shows the Start up controller window with the Select connected stages step. Here a stage database entry for a specific stage is chosen. If you wish to store the settings you chose as power-up default settings to the controller's non-volatile memory see "Storing Parameter Settings to Non-Volatile Memory Using PIMikroMove Main Window" (p. 38) for instructions. b) If a connection is startedoccurs automatically in the Action column, see figure below. www.pi.ws E-861 PZ205E Release 1.2.1 Page 16 First Steps Then, if the preset stage type is to be used accept the preset stage database entry by pressing the OK button. If your stage features a sensor, go on with step 10 to reference the axis. If your stage does not feature a sensor, proceed with step 11a) to command motion. Notes: While choosing the stage type, the parameters for that stage type will be loaded automatically from a stage database on the host PC to the controller's volatile memory. Make sure that you always have installed the latest version of the PIStages2.dat stage database. See "Installing the Software on the Host PC" (p. 27) and "Updating PIStages2.dat" (p. 32) for details. The choice can later be changed with Select connected stages on the E-861 menu in the PIMikroMove main window. See "Controller Parameters" (p. 35) and "Customizing the System" (p. 89) for more information regarding parameter settings. 10 Start reference moves for the axes. Note that this step can only be performed if your mechanics features a sensor and reference or limit switches. In addition, the relevant parameters have to be enabled accordingly. With Default-Stage-N parameter settings reference or limit switches are disabled. Thus referencing is not possible with this parameter set. Due to the nature of the incremental sensors used in the stages, the www.pi.ws E-861 PZ205E Release 1.2.1 Page 17 First Steps controller cannot know the absolute position of an axis upon startup. Reference and/or limit switches in the stage can be used to obtain absolute position information. The figures below show the Start up controller window with the Start up axes step. Click Automatic to start the reference move. When referencing is successfully finished, press the Close button. The PIMikroMove main window will open. See "Referencing" (p. 51) for more information. www.pi.ws E-861 PZ205E Release 1.2.1 Page 18 First Steps 11 Start some test moves of the axis. Depending on your settings there are the following possibilities: a) Mechanics does not feature a sensor: Select the PiezoWalk (R) channels tab in the PIMikroMove main window, see figure below. Insert an appropriate value in the Open-Loop Number of Steps field. To exert motion press the associated arrow buttons. b) Mechancis features a sensor: Select the Axes tab in the PIMikroMove main window, see figures below. You can command motion either in open-loop or closed-loop operation. Activate servo to command motion in closed-loop operation. For example, perform a step of a predefined size by pressing the associated arrow buttons for an axis www.pi.ws E-861 PZ205E Release 1.2.1 Page 19 First Steps For how to realize stand-alone operation see "Preparing for Stand-Alone Operation" (p. 85). See "Working with Controller Macros" (p. 82) for how to store macros in the E-861's non-volatile memory for later recall and "Joystick Control" (p. 79) for manual control by a joystick connected to the E-861. 2.3 Example for Commanding Motion CAUTION ! If no sensor is present in your system: ■ Do not switch servo on (SVO command) ■ Do not send commands for closed-loop motion, like MOV or MVR ■ Do not send the open-loop commands OMA and OMR, since they use a sensor, too Otherwise the connected mechanics can run into the hard stop at full speed, which may cause damage to your hardware setup. After setting up a connection with PIMikroMove you can perform some test motion. Note that your stage must feature a sensor to reference and to perform closed-loop motion. The example described below requires that your system features a sensor. Proceed as follows: www.pi.ws 1 Reference and activate servo first, see steps 10 and step 11 in "Getting Started" (p. 12) for details. Note that your stage must feature a sensor to reference and to perform closed-loop motion. 2 To send the commands as given below follow the Tools → Command entry menu sequence in the PIMikroMove main window, see figure below. E-861 PZ205E Release 1.2.1 Page 20 First Steps 3 Then you can send motion commands via the Command entry window as listed in the example given below. The example below shows how to perform closed-loop and open-loop motion. See "Modes of Operation" (p. 54) for more information regarding the motion modes of a NEXACT® linear stage and the transitions between them. MOV 1 6 MVR 1 -5 SVO 1 0 OAD 1 40 RNP 1 SVO 1 1 MOV 1 5 www.pi.ws Closed-loop motion, Axis 1 moves to absolute position 6 mm. Note that motion can be performed either only in nanostepping mode or in an alternating sequence of nanostepping and analog motion. See "Motion Modes" (p. 56) for details. Closed-loop motion, moves Axis 1 relative to the last commanded closed-loop target position. Servo must be disabled to enable open-loop commands. Disabling servo includes an automatic Relaxing procedure. (See also "Changing Motion and Servo Mode" (p. 59) for details) Therefore, a motion in analog mode can be performed by a next OAD command. Open-loop analog motion of PiezoWalk channel 1, set feed voltage to +40 volts which corresponds to a motion of approx. 3.3 µm, depending on stage, load and motion direction, in positive direction. Relaxing brings the PiezoWalk channel 1 to a full-holding-force, zero-drive voltage Relaxed state, is required before the motion mode can be changed from analog to nanostepping motion in open-loop operation (and vice versa), and before servo is activated for closed-loop operation. Servo is activated. Closed-loop motion, Axis 1 moves to absolute position 5 mm. E-861 PZ205E Release 1.2.1 Page 21 First Steps SVO 1 0 OAD 1 -20 RNP 1 SSA 1 40 OSM 1 100 OMA 1 6 OMR 1 -3 RNP 1 OAD 1 -40 www.pi.ws Servo must be disabled to enable open-loop commands. Disabling servo includes an automatic Relaxing procedure. Open-loop analog motion of PiezoWalk channel 1, set feed voltage to -20 volts which corresponds to a motion of approx. 1 µm, depending on stage, load and motion direction, in negative direction. Relaxing of PiezoWalk channel 1 is required to prepare stage for nanostepping motion. Voltage amplitude for nanostepping motion is set to +40 volts. Open-loop nanostepping motion, PiezoWalk channel 1 moves 100 steps in positive direction. Open-loop nanostepping motion, Axis 1 moves to absolute position, i.e. to absolute position of approximately 6 mm. Open-loop nanostepping motion, moves Axis 1 relative to the last commanded open-loop target position, here by 3 mm in negative direction. Relaxing of PiezoWalk channel 1 is required to prepare stage for analog motion. Open-loop analog motion of PiezoWalk channel 1, set feed voltage to -40 volts which corresponds to a motion of approx. 3.3 µm, depending on stage, load and motion direction, in negative direction. E-861 PZ205E Release 1.2.1 Page 22 Details of Operation 3 Details of Operation 3.1 Front and Rear Panel Elements 3.1.1 Front Panel Elements Figure 1: Front Panel of E-861.1A1 Name RS-232 In RS-232 Out STA LED (green) ERR LED (red) I/O Joystick www.pi.ws Function Serial connection to host PC or to previous controller in a daisy-chain network. See "RS-232 In and RS-232 Out Sockets" (p. 216) for pinout. Serial connection to next controller in a daisychain network. See "RS-232 In and RS-232 Out Sockets" (p. 216) for pinout. Power on and ready indicator. When power is applied to the controller, the LED will glow for normal operation. Error indicator; when LED lights up, error code is non-zero and can be queried and cleared using the ERR? command (p. 127). Universal Serial Bus (USB) for connection to host PC. See "USB Socket" (p. 217) for more information. Mini DIN 9-pin connector, provides digital I/O and analog input lines. See "I/O Socket" (p. 218) for pinout. Mini DIN 6-pin connector for analog joystick (input). See "Joystick Socket" (p. 220) for pinout. E-861 PZ205E Release 1.2.1 Page 23 Details of Operation Name Mode, Baud, Addr 3.1.2 Function 8-bit DIP switch, sets controller address, RS-232 baud rate and operating mode of unit. See "DIP Switch Settings" for details. DIP Switch Settings Figure 2: Slider up = ON, slider down = OFF Name Addr (switch 1 to 4) Baud (switch 5 and 6) Mode (switch 7 and 8) Function Controller address (1 to 16) Baud rate (9600, 19200, 38400 or 115200**) Operating mode (normal operation or firmware update) ** older firmware revisions may not support 115200 baud Factory settings are shown in bold in the following tables. www.pi.ws E-861 PZ205E Release 1.2.1 Page 24 Details of Operation Address SW1 SW2 SW3 SW4 1 ON ON ON ON 2 ON ON ON OFF 3 ON ON OFF ON 4 ON ON OFF OFF 5 ON OFF ON ON 6 ON OFF ON OFF 7 ON OFF OFF ON 8 ON OFF OFF OFF 9 OFF ON ON ON 10 OFF ON ON OFF 11 OFF ON OFF ON 12 OFF ON OFF OFF 13 OFF OFF ON ON 14 OFF OFF ON OFF 15 OFF OFF OFF ON 16 OFF OFF OFF OFF Baud Rate* SW5 SW6 9600 ON ON 19200 ON OFF 38400 115200** OFF OFF ON OFF *Other settings are fixed at 8 data, 1 stop, no parity; Internal buffers are used so there is no handshake required **Older firmware revisions may not support 115200 baud www.pi.ws Mode Firmware update SW7 OFF SW8 ON Normal OFF OFF E-861 PZ205E Release 1.2.1 Page 25 Details of Operation 3.1.3 Rear Panel Elements Figure 3: Rear Panel of E-861.1A1 Name 24 VDC Sensor Motor 3.2 Function Connector for power supply. See "24 VDC Socket" (p. 221) for pinout. Sub-D connector for position feedback devices such as an incremental encoder and for the signals of limit and reference sensors. See "Sensor Socket" (p. 216) for pinout. Sub-D connector for NEXACT® drive. See "Motor Socket" (p. 215) for pinout. Installing the E-861 The E-861 can be used as desktop device or mounted on a base in any orientation. If you want to mount the E-861 on a base, see "Mounting Hole Pattern" (p. 214). CAUTION Place the system in a location with adequate ventilation to prevent internal heat build-up. Allow at least 10 cm (4 inches) clearance from the top and the rear of the unit and 5 cm (2 inches) from each side. www.pi.ws E-861 PZ205E Release 1.2.1 Page 26 ! Details of Operation Because grounding is not assured over the power connection, the E-861 chassis must be connected to a protective ground, e.g. via one of the fixing screws on the front or rear panel. 3.3 Installing the Software on the Host PC Windows operating systems: 1 Insert the E-861 CD in your host PC. 2 If the Setup Wizard does not open automatically, start it from the root directory of the CD with the 3 icon. Follow the on-screen instructions and select the “typical” installation. Typical components are LabVIEW drivers, GCS DLL, PIMikroMove. For an overview over the host software provided see "Software Description" (p. 10). 3.4 Connecting Controller or Daisy-Chain Network to Host PC ! CAUTION Never connect the RS-232-IN and USB connectors of the same controller to a PC at the same time as this can cause damage to the controller. Use either the RS-232 or the USB interface to connect the E-861 or an E-861 daisy chain network to the host PC. Up to 16 E-861 controllers can be controlled from a single host computer interface. The RS-232 output stages of some PCs may not be capable of driving more than 6 units; if this is a problem use USB to interface with the PC. Interconnect any additional controllers being networked to the network with straight-through RS-232 cables chaining off the RS-232 OUT connector of the controller connected to the PC (one straight-through RS-232 cable (C-862.CN) comes with each E-861 controller). NOTES In a daisy-chain, connected via USB or via RS-232, there must be one controller with address 1. It is not required that this controller is directly www.pi.ws E-861 PZ205E Release 1.2.1 Page 27 Details of Operation connected to the host PC, i.e. this controller does not have to be the first controller of the daisy-chain. If there is no controller in a daisy-chain with address 1 an error message occurs when you try to setup a connection. 3.4.1 USB Interface The first time you connect over the USB interface, be sure you are logged on the PC as a user having administrator rights. After the E-861 is powered on, a message will appear saying that new hardware has been detected. Follow the on-screen instructions and insert the E-861 CD again. The required hardware drivers are found in the \USB Driver directory. The USB drivers will make the USB interface appear to all software on the host PC as a new COM port. That port will be present only when the controller is connected via USB and powered on. Depending on the way the connection between E-861 and host PC is established in the host software, it may be possible to select the baud rate of that PC COM port. Make sure that the selection corresponds to the baud rate settings of the E-861 (made via the DIP switches on the E-861 front panel). 3.4.2 Baud Rate Settings The baud rate can be set to one of 9600, 19200, 38400 and 115200 using the Baud DIP switches on the E-861 front panel, see "DIP Switch Settings" for details (115200 may not be supported by older firmware revisions). All controllers in a daisy chain network must be set to the same baud rate. Other communication settings are fixed at 8 data, 1 stop, no parity; internal buffers are used so there is no handshake required. www.pi.ws E-861 PZ205E Release 1.2.1 Page 28 Details of Operation 3.4.3 Address Settings The controller address of the E-861 can be set with the Addr DIP switches on the front panel, see "DIP Switch Settings" for details. Possible controller addresses are in the range of 1 to 16, address 1 is default. The host PC always has the address 0. See "Target and Sender Address" (p. 110) for more information about the format of the command line. In a daisy chain network, each E-861 must have a unique controller address and one controller of the daisy-chain must have address 1. See also “Connecting Controller or Daisy-Chain Network to Host PC” (p. 27) for more information. The communication on the interface is between the host computer and a specifically addressed controller in the chain. With the broadcast address 255, all controllers can be addressed at the same time, but no reports are displayed on the host PC. NOTES Except when making the required hardware settings, you have to deal with addresses only if the connection between E-861 and host PC is done via a terminal program without any intervening software layers (e.g. DLLs). With PITerminal, this is the case if the connection is made by pressing the Connect… button. 3.5 Referencing Because the encoder signals used for position feedback provide only relative motion information, the controller cannot know the absolute position of an axis upon startup. This is why a referencing procedure is required before absolute target positions can be commanded and reached. For the implementation of the referencing functionality in the individual host software components, see the appropriate manuals. 3.5.1 Reference Mode The current reference mode setting of the controller (ask with RON? (p. 170)) determines how referencing can be performed. By default, a reference move must be performed (p. 30), but it is also possible to set absolute positions manually (p. 30). To switch between the two reference modes, use the RON command (p. 170). www.pi.ws E-861 PZ205E Release 1.2.1 Page 29 Details of Operation 3.5.2 Perform a Reference Move When the reference mode is set to "1" (factory default), referencing is done by performing a reference move with FRF (p. 133), FPL (p. 131) or FNL (p. 129). NOTES Neither relative nor absolute targets can be commanded as long as referencing was not successfully performed. FRF requires that the axis has a reference switch (ask with TRS? (p. 188)), and FPL and FNL require that the axis has limit switches (ask with LIM? (p. 146)). The limit switches can only be used for reference moves if the travel range is not reduced by soft limits, see "Travel Range Adjustment" (p. 92) for more information. For best repeatability, always reference in the same way. The FRF command always approaches the reference switch from the same side, no matter where the axis is when it is issued. 3.5.3 Set Absolute Position When the reference mode is set to "0", referencing is done by entering an absolute position value using the POS command (p. 166). NOTES Only relative targets but no absolute targets can be commanded as long as referencing was not successfully performed. If the controller is given an incorrect position with POS, the axis can run into a limit switch and will not be able to move away from the switch due to the travel range limits given by the MAX_TRAVEL_RANGE_POS parameter (ID 0x15; ask with TMX? (p. 187)) and the MAX_TRAVEL_RANGE_NEG parameter (ID 0x30; ask with TMN? (p. 186)). www.pi.ws E-861 PZ205E Release 1.2.1 Page 30 Details of Operation 3.6 Using Trigger Input and Output It is possible to trigger external devices and to program start/stop actions in macros using the digital I/O lines of the E-861. See "I/O Socket" (p. 218) for the lines and pinout. The number of digital I/O lines available on the E-861 can be queried using the TIO? command (p. 186). You can set the states of the Output 1 to Output 4 lines (TTL, active high) using the DIO command (p. 121), e.g. to trigger other devices. The lines can be set individually or all at once according to a bit pattern. Furthermore, you can program the Output 1 to Output 4 lines using the CTO command (trigger configuration) and the TRO command (trigger enabling/disabling). See "Configuring Trigger Output—Examples" for examples. The states of the Input 1 to Input 4 lines (TTL, active high) can be queried with the DIO? command (p. 121). These lines can be used to stop macros and to trigger certain actions in macros via the MEX command (p. 149) or the WAC command (p. 189), respectively. See "Working with Controller Macros" (p. 82) for an example. 3.7 Updates 3.7.1 Software Updates Updated releases of software and manuals are available for download at www.pi.ws. While the manuals are freely accessible, you need a password for the software download. This password is provided on the E-861 CD in the E-861 Releasenews PDF file in the \Manuals directory. To download the latest software (complete CD mirror) from the PI Website, proceed as follows: www.pi.ws 1 On the www.pi.ws front page, move the cursor to Manuals, Software, ISO Statements in the Service section on the left. 2 Select Software from the list that pops up. 3 On the PI Download Server page, enter the Username and the Password which are provided in the E-861 Releasenews xxxxx.pdf on the E-861 CD and click on Login 4 Click on the E Piezo Drivers & Nanopositioning controllers category. 5 Click on E-861. 6 Click on Software (if you click on Documents you will get the latest manuals). E-861 PZ205E Release 1.2.1 Page 31 Details of Operation 7 3.7.2 Click on the latest CD-Mirror (includes the manual versions that were with the release) or on the latest update zip file. Updating PIStages2.dat To install the latest version of PIStages2.dat from the PI Website proceed as follows: 1. On the www.pi.ws front page, move the cursor to Manuals, Software, ISO Statements in the Service section on the left. 2. Select Software from the list that pops up. 3. On the PI Support Site page, click on the General Software category (no login or password is required). 4. Click on PI Stages. 5. Click on pistages2. 6. In the download window, switch to the ...\PI\GcsTranslator directory. The location of the PI directory is that specified upon installation, usually in C:\Documents and Settings\All Users\Application Data (Windows XP) or C:\ProgramData (Windows Vista) (may differ in otherlanguage Windows versions). Note that in PIMikroMove, you can use the Version Info entry in the controller menu or the Search for controller software entry in the Connections menu to identify the GcsTranslator path. 7. If desired, rename the existing PIStages2.dat (if present) so as to preserve a copy for safety reasons. 8. Download the file from the server as PIStages2.dat. 3.7.3 Firmware Updates The current firmware revision of your E-861 is contained in the response to the *IDN? command. Firmware updates can be made by running the TMS320F28XX Updater firmware update program on the host computer. The program is available on the E-861 CD and can be installed with the Setup Wizard or started directly from the \TMS320F28xx_Updater directory of the CD. If you want to run the Setup Wizard: ■ www.pi.ws Insert the E-861 CD in your host PC. E-861 PZ205E Release 1.2.1 Page 32 Details of Operation ■ If the Setup Wizard does not open automatically, start it from the root directory of the CD with the ■ icon. Follow the on-screen instructions, select the "custom" installation and then select the TMS320F28XX Updater. NOTES The E-861 whose firmware is to be updated must be directly connected to the host PC (no daisy chain, do not even connect a cable to "RS-232 Out"), and the connection should be made via the RS-232 interface. USB connections are not recommended for firmware updates. If the controller is in firmware update mode, the DIP switch settings for baud rate and controller address are ignored. The serial connection to the host PC is made with an automatic baud rate setting ("Autobaudrate") in the firmware update program. If the Autobaudrate connection should fail, try again to establish the connection. When the controller is in firmware update mode, all LEDs on the front panel will stay off. Proceed as follows to update the E-861 firmware: www.pi.ws 1 Only required if the firmware update introduces new parameters (see the documentation that comes with the update): In the PITerminal or the Command Entry window of PIMikroMove, send SPA? and save the response to a text file for later restoration of the controller parameter values. 2 Power down the E-861 and select the firmware update mode using DIP switch 8 on the E-861 front panel: switch 8 must be set to the ON position 3 Start the TMS320F28XX Updater firmware update program. 4 Power on the E-861. 5 Establish communication between E-861 and host PC in the firmware update program (Autobaudrate connection). 6 Perform the update: Select the new bootloader file and the new flash file for the update. Make sure that the correct files are selected in the corresponding fields. Start the update process. 7 When the update has finished, close the firmware update program. E-861 PZ205E Release 1.2.1 Page 33 Details of Operation 8 Power down the E-861 and set it back to normal operation using DIP switch 8: switch 8 must be set to the OFF position 9 Power on the E-861. If the firmware update has not introduced new parameters, the E-861 can be started for normal operation with the new firmware. Otherwise proceed with step 10. 10 Only required if the firmware update introduces new parameters (see the documentation that comes with the update): Make sure you have created a parameter backup file (see step 1). In the PITerminal or the Command Entry window of PIMikroMove, send ZZZ 100 Parameter to set the new parameters to initial values. Since this command also resets all other parameters, you have to set them back to the values stored in the backup file using SPA (see "Controller Parameters" (p. 35) for details on parameter handling and saving). Furthermore, check the new parameters with SPA? and set them to plausible values. www.pi.ws E-861 PZ205E Release 1.2.1 Page 34 Controller Parameters 4 Controller Parameters 4.1 General Information In this section you find information about: ■ What to consider for first handling of parameter settings ■ How to store parameter settings: Storing parameter settings to controller’s volatile memory Storing parameter settings to controller’s non-volatile memory Storing parameters to volatile and non-volatile memory via commands ■ A parameter list with short descriptions of all available parameters, including GEMAC parameters for the sensor’s hardware ■ A list of Default-Stage-N parameter settings For information on how to store a set of parameter settings as a userdefined stage database entry on your host PC, see "How to Create a New Stage Type in the PI Stages Database" (p. 98) for detailed instructions. The values of the parameters required for closed-loop operation depend on your mechanics (stage configuration, sensor, load) and have to be adjusted properly before initial operation of a closed-loop system. See "Customizing the System" (p. 89) for detailed information. For detailed information regarding the parameters for the GEMAC interpolation circuit (IDs 0x7000010 to 0x700001F), see "GEMAC Parameters" (p. 105) and the GEMAC manual IP1000_B_EN.pdf which is provided on the E-861 CD. Values stored in non-volatile memory are power-on defaults, so that the system can be used in the desired way immediately. 4.2 What to Consider for First Handling of Parameter Settings To adapt the E-861 to your application, you can modify parameter values. The parameters available depend on the controller firmware. With HPA? (p. 138) you can obtain a list of all available parameters with information about each (e.g. short descriptions). The volatile and non-volatile memory parameter values can be read with the SPA? (p. 178) or SEP? (p. 174) commands, respectively. See "How to Store Parameter Settings" (p. 37) and "Parameters for Customizing" (p. 90) for further information. www.pi.ws E-861 PZ205E Release 1.2.1 Page 35 Controller Parameters CAUTION Incorrect E-861 parameter values may lead to improper operation or damage of your hardware. Be careful when changing parameters. Values stored in non-volatile memory are power-on defaults, so that the system can be used in the desired way immediately. www.pi.ws ■ By default, the controller's non-volatile memory contains parameter settings of Default Stage N. ■ With Default-Stage-N's parameter settings, e.g. reference and limit switches are not recognized, and position is commanded in counts. ■ When you set up a connection with PIMikroMove you can choose a specific stage database entry. This database entry contains all required stage-specific parameter settings except the GEMAC parameters of the sensor. For details about these parameters see "GEMAC Parameters" (p. 105) and the GEMAC manual IP1000_B_EN.pdf which is provided on the E-861 CD. While choosing the stage type the parameters for that stage type will be loaded automatically from a stage database on the host PC to the controller's volatile memory. ■ With stage-specific database entries reference switch, and – for certain stages – limit switches can be recognized, and position is commanded in mm. ■ If you want to store parameters that you need permanently for your individual application you can use commands WPA or SEP to store them to non-volatile memory. See "How to Store Parameter Settings" (p. 37) below for details. Note that stand-alone operation is only possible if all required parameter settings are stored to non-volatile memory. ■ If you want to operate the controller with a custom stage not delivered from PI you can use the Default-Stage-N's stage database entry. See "Default-Stage-N Parameter Settings" (p. 49) for details. E-861 PZ205E Release 1.2.1 Page 36 ! Controller Parameters 4.3 How to Store Parameter Settings You have several possibilities to store parameter settings: ■ Store parameter settings to volatile memory in the expanded Single axis window of PIMikroMove. Find details in “Storing Parameter Settings to Volatile Memory Using Expanded Single Axis Window” (p. 37). ■ Store parameter settings to non-volatile memory using the main menu of PIMikroMove. Find details in “Storing Parameter Settings to Non-Volatile Memory Using PIMikroMove Main Window” (p. 38). ■ Store parameter settings to volatile or non-volatile memory using commands SPA, SEP, RPA and WPA via a terminal program like PITerminal or via the Command entry window of PIMikroMove. Find details in “Storing Parameters to Volatile and Non-Volatile Memory via Commands” (p. 40). ■ Store a set of parameter settings as a user-defined stage database entry in the PI_UserStages2.dat file located on your host PC. It will be loaded automatically to the controller's volatile memory. See “How to Create a New Stage Type in the PI Stages Database” (p. 98) in Section "Customizing the System" (p. 89) for detailed instructions. To store parameters according to the presented possibilities requires that: 4.3.1 ■ PIMikroMove or PITerminal must be installed on your host PC, see “Installing the Software on the Host PC” (p. 27) for details. ■ Communication between controller and host PC must be established using PIMikroMove (or PITerminal), see “Getting Started" (p. 12) for details. Storing Parameter Settings to Volatile Memory Using Expanded Single Axis Window PIMikroMove main window must be open. Proceed as follows to adjust and store parameter settings: 1 www.pi.ws Open the expanded single axis window by following the View → Single Axis Window menu sequence for the connected stage. E-861 PZ205E Release 1.2.1 Page 37 Controller Parameters 2 Click on the + at the right side of the single axis window, see figure below. 3 In the list at the right side of the expanded single axis window you can insert new settings. If the parameter you wish to change does not occur in the list click on Select parameters to display the parameter in the list. Note that a new parameter setting is only sent to the controller after is pressed while the cursor is in the text entry. 4.3.2 Storing Parameter Settings to Non-Volatile Memory Using PIMikroMove Main Window PIMikroMove main window must be open. The procedure described stores current parameter settings of the controller’s volatile memory to non-volatile memory. 1 www.pi.ws To select parameters to be adjusted the Axes tab must be displayed. Press the Select columns to be displayed icon in the right top corner of the PIMikroMove main window, see next figure. E-861 PZ205E Release 1.2.1 Page 38 Controller Parameters 2 Adjust chosen parameter, see next figure. 3 To store adjusted parameter settings follow the E-861 → Save parameters to non-volatile memory menu sequence in the PIMikroMove main window, see next figure. www.pi.ws E-861 PZ205E Release 1.2.1 Page 39 Controller Parameters A password is required, see next figure. 4 To store adjusted GEMAC parameter settings to non-volatile memory use password 4711. For all other parameters use password 100. Note that the adjusted settings are loaded from non-volatile memory to volatile memory each time you power on or reboot the controller. 4.3.3 Storing Parameters to Volatile and Non-Volatile Memory via Commands Using the "general" modification commands SPA, RPA, SEP and WPA, parameters can be changed in volatile memory (SPA (p. 175), RPA (p. 171)) or in non-volatile memory (SEP (p. 173), WPA (p. 190)). www.pi.ws E-861 PZ205E Release 1.2.1 Page 40 Controller Parameters 1 To store parameters using commands follow the Tools → Command entry menu sequence in the PIMikroMove main window, see next figure. Example: To set the slew rate to 100 ms send SPA 1 0x7000002 100. It is recommended that any modifications be first made with SPA, and when the controller runs well, saved using WPA. In addition to the "general" modification commands, there are commands which change certain specific parameters in volatile memory as e.g. VEL (p. 190) changes 0xA, i.e. the closed-loop velocity (see table below). 4.4 Parameter List ! CAUTION Parameter ID (hexadecimal) 0x1 www.pi.ws Wrong values of the E-861 parameters may lead to improper operation or damage of your hardware. Be careful when changing parameters. Data Type Password for Writing to NonVolatile Memory Parameter Description Possible Values/Notes INT 100 P-Term of PID-parameter set for nanostepping mode 0 to 65535 E-861 PZ205E Release 1.2.1 Page 41 Controller Parameters Parameter ID (hexadecimal) Data Type Password for Writing to NonVolatile Memory Parameter Description Possible Values/Notes 0x2 INT 100 I-Term of PID-parameter set for nanostepping mode 0 to 65535 0x3 INT 100 D-Term of PID-parameter set for nanostepping mode 0 to 65535 0x4 LONG INT 100 I-limit 0 to 2,000,000 Maximum position error (user unit) Used for stall detection. If the position error (i.e. the absolute value of the difference between current position and commanded position) in closed-loop operation exceeds the given maximum, the controller sets error code -1024 (“Motion error”), the servo will be switched off and the axis stops. Note that with open-loop referencing exceeding of maximum position error is not indicated. 100 Maximum closed-loop velocity (user unit/s) Gives the maximum value which can be set with the VEL command (p. 188). On power-on, the closed-loop velocity is set by parameter 0x4B Gives the current closed-loop acceleration limited by parameter 0x4A 0x8 0xA FLOAT FLOAT 100 0xB FLOAT 100 Current closed-loop acceleration (user unit/s2), also changed by ACC command (p. 118). 0xC FLOAT 100 Closed-loop deceleration Gives the current closed-loop (user unit/s2), also changed deceleration limited by by DEC command (p. 119). parameter 0x4B 0xE INT 100 Numerator of the countsper-physical-unit factor www.pi.ws E-861 PZ205E Release 1.2.1 1 to 1,000,000 for each parameter. Page 42 Controller Parameters Parameter ID (hexadecimal) Data Type Password for Writing to NonVolatile Memory Parameter Description Possible Values/Notes 0xF INT 100 The counts-per-physical-unit factor determines the "user" unit for closed-loop motion commands. When you change this factor, all other Denominator of the counts- parameters whose unit is per-physical-unit factor based on the "user" unit are adapted automatically, e.g. closed-loop velocity and parameters regarding the travel range. 0x14 INT 100 Stage has a reference 0x15 0x16 FLOAT FLOAT 100 100 MAX_TRAVEL_RANGE_ POS The maximum travel in positive direction (user unit) "Soft limit", based on the home (zero) position. If the soft limit is smaller than the position value for the positive limit switch (which is given by the sum of the parameters 0x16 and 0x2F), the positive limit switch cannot be used for referencing. Smallest possible value is 0. VALUE_AT_REF_POS The position value at the reference position (user unit) The position value which is to be set when the mechanics performs a reference move to the reference switch. Represents the physical distance between the reference switch and the negative limit switch integrated in the mechanics. When the mechanics performs a reference move to the negative limit switch, the position is set to the difference of VALUE_AT_REF_POS and DISTANCE_REF_TO_N_LIM. 0 = positive limit switch active high (pos-HI), negative limit 0x17 FLOAT 100 DISTANCE_REF_TO_N_ LIM The distance between reference switch and negative limit switch (user unit) 0x18 INT 100 Axis limit mode www.pi.ws 1 = the stage has a reference, else 0 E-861 PZ205E Release 1.2.1 Page 43 Controller Parameters Parameter ID (hexadecimal) Data Type Password for Writing to NonVolatile Memory Parameter Description Possible Values/Notes switch active high (neg-HI) 1 = positive limit switch active low (pos-LO), neg-HI 2 = pos-HI, neg-LO 3 = pos-LO, neg-LO 0x2F 100 DISTANCE_REF_TO_P_ LIM The distance between reference switch and positive limit switch (user unit) Represents the physical distance between the reference switch and the positive limit switch integrated in the mechanics. When the mechanics performs a reference move to the positive limit switch, the position is set to the sum of VALUE_AT_REF_POS and DISTANCE_REF_TO_P_LIM. "Soft limit", based on the home (zero) position. If the soft limit is smaller than the absolute value of the position set for the negative limit switch (i.e. the difference of the parameters 0x16 and 0x17), the negative limit switch cannot be used for referencing. Smallest possible value is 0. 0x30 FLOAT 100 MAX_TRAVEL_RANGE_ NEG The maximum travel in negative direction (user unit) 0x31 INT 100 Invert the reference 1 = invert the reference, else 0 100 Stage has limit switches; enables / disables the stopping of the motion at the limit switches 0 = Stage has limit switches 1 = Stage has no limit switches Settle window (counts) In closed-loop operation, the on-target status is true when the current position is inside the settle window and stays there for at least the settle time (parameter ID 0x3F). The settle window is centered around the target position. The minimum value for stable positioning is 2. 0x32 INT 0x36 INT 0x3C STRING 100 Stage name Default is "DEFAULT_STAGE-N" 0x3F FLOAT 100 Settle time (s) 0 to 1.000 s; see Settle window 0x47 INT 100 Default direction for 0 = detect automatically, www.pi.ws 100 E-861 PZ205E Release 1.2.1 Page 44 Controller Parameters Parameter ID (hexadecimal) Data Type Password for Writing to NonVolatile Memory Parameter Description reference 0x49 0x4A FLOAT FLOAT Possible Values/Notes 1 = start in negative direction, 2 = start in positive direction 100 Current closed-loop Gives the current closed-loop velocity (user unit/s) also velocity limited by parameter changed by VEL command 0xA (p. 188) 100 Maximum closed-loop acceleration (user unit/s2) Gives the maximum value which can be set with the ACC command (p. 118) (for parameter 0xB) Gives the maximum value which can be set with the DEC command (p. 119) (for parameter 0xC) Is limited by Maximum closedloop velocity parameter (ID 0xA) 0x4B FLOAT 100 Maximum closed-loop deceleration (user unit/s2) 0x50 FLOAT 100 Closed-loop referencing velocity (user units/s) 0x5A INT 100 Numerator of servo loop input factor 1 to 1,000,000 for each parameter The servo loop input factor decouples servo loop parameters from the encoder resolution. Not to be changed by the customer. 0X5B INT 100 Denominator of servo loop input factor Note that the servo loop input factor is independent from 0xE and 0xF, i.e. the counts-perphysical-unit factor. The counts-per-physical-unit factor has no influence on control loop stability, but is used for input and output scaling of position values. 0x94 FLOAT 100 Notch filter frequency 1 (Hz) 40 to 20000 The corresponding frequency component in the control value is reduced to compensate for unwanted resonances in the mechanics. Only active in closed-loop operation. Should normally not be changed (try to change only with very high loads). 0x95 FLOAT 100 Notch filter edge 0.1 to 10 Gives the slope of the filter www.pi.ws E-861 PZ205E Release 1.2.1 Page 45 Controller Parameters Parameter ID (hexadecimal) Data Type Password for Writing to NonVolatile Memory Parameter Description Possible Values/Notes edge. Do not change. 0xAC FLOAT 100 Low-pass filter frequency (Hz) 40 to 20000 Gives the cut-off frequency of a low-pass filter which is only active in closed-loop operation and with analog mode motion 0x401 INT 100 P term of PID-parameter set for analog mode 0 to 65535 0x402 INT 100 I term of PID-parameter set 0 to 65535 for analog mode 0x403 INT 100 D term of PID-parameter set for analog mode 0 to 65535 Travel range minimum (user unit) By default set to a very large value which should not be changed. Can be used as travel range limit for open-loop motion with OSM (p. 163), OAD (p. 155), OMA (p. 158), OMR (p. 161): if the current position reaches this value, the motion is stopped. In this case, enlarge the limit. Travel range maximum (user unit) By default set to a very large value which should not be changed. Can be used as travel range limit for open-loop motion with OSM (p. 163), OAD (p. 155), OMA (p. 158), OMR (p. 161): if the current position reaches this value, the motion is stopped. In this case, enlarge the limit. Slewrate (ms) 1 to 1000 ms This value affects the time which is required for the "preparing for motion" and "relaxing" changes of the motion state. Depending on the current motion state, a change of state can take up to four times the slewrate value. See "Modes of Operation" (p. 54) for details. 0x7000000 0x7000001 0x7000002 www.pi.ws INT INT INT 100 100 100 E-861 PZ205E Release 1.2.1 Page 46 Controller Parameters Parameter ID (hexadecimal) Data Type Password for Writing to NonVolatile Memory Parameter Description Possible Values/Notes 0x7000003 FLOAT 100 Bending voltage, also changed by SSA command (p. 180) 0 to 55 V, gives the step size for open-loop nanostepping motion 100 Time to close servo (ms) 1 to 1000 ms Gives the time interval between obtaining trajectory voltage and closing of servoloop 100 Current open-loop velocity (step cycles/s), also changed by OVL command (p. 165) Gives the current open-loop velocity, limited by parameter 0x7000204. On power-on, the current open-loop velocity is set by parameter 0x7000201. 100 Current open-loop Gives the current open-loop acceleration (step acceleration, limited by 2 cycles/s ), also changed by parameter 0x7000205. OAC command (p. 154) 100 Current open-loop Gives the current open-loop deceleration (step deceleration, limited by 2 cycles/s ), also changed by parameter 0x7000206. ODC command (p. 157) 0x7000004 0x7000201 0x7000202 0x7000203 INT FLOAT FLOAT FLOAT Gives the maximum value which can be set with the OVL command (p. 165) (for parameter 0x7000201). 0x7000204 FLOAT 100 Maximum open-loop velocity (step cycles/s) 0x7000205 FLOAT 100 Maximum open-loop acceleration (step cycles/s2) Gives the maximum value which can be set for parameter 0x7000202 0x7000206 FLOAT 100 Maximum open-loop deceleration (step cycles/s2) Gives the maximum value which can be set for parameter 0x7000203 0x7000207 INT 100 Open-loop referencing velocity (step cycles/s) Is limited by Maximum openloop velocity parameter (ID 0x7000204) PiezoWalk Driving mode Determines how closed-loop motion is performed: 0 = nanostepping mode only 1 = alternating sequence of analog mode and nanostepping mode Axis unit This parameter has to be set consistent with the counts-perphysical-units factor given by 0x7001A00 INT 0x7000601 CHAR www.pi.ws 100 E-861 PZ205E Release 1.2.1 Page 47 Controller Parameters Parameter ID (hexadecimal) Data Type Password for Writing to NonVolatile Memory Parameter Description Possible Values/Notes parameters 0xE and 0xF 4711 GEMAC parameter 0 (Write register CFG0 on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 4711 GEMAC parameter 1 (Write register CFG1 on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 4711 GEMAC parameter 2 (Write register CFG2 on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 4711 GEMAC parameter 3 (Write register ERRMASK on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 0x7000014 4711 GEMAC parameter 4 (Write register PHASE on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 0x7000015 - GEMAC parameter 5 (reserved) Read only. Not included in SEP? response 0x7000016 - GEMAC parameter 6 (reserved) Read only. Not included in SEP? response 4711 GEMAC parameter 7 (Write register SGAIN on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 4711 GEMAC parameter 8 (Write register SOFF on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 4711 GEMAC parameter 9 (Write register CGAIN on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 0x700001A 4711 GEMAC parameter 10 (Write register COFF on the GEMAC interpolation circuit) Can be set with SPA and saved with WPA. Not available for SEP and SEP? 0x700001B 4711 GEMAC parameter 11 Can be set with SPA and 0x7000010 0x7000011 0x7000012 0x7000013 0x7000017 0x7000018 0x7000019 www.pi.ws E-861 PZ205E Release 1.2.1 Page 48 Controller Parameters Parameter ID (hexadecimal) Data Type Password for Writing to NonVolatile Memory Parameter Description (Write register SYNC on the GEMAC interpolation circuit) Possible Values/Notes saved with WPA. Not available for SEP and SEP? 0x700001C - GEMAC parameter 12 (internal use) Read only. Not included in SEP? response 0x700001D - GEMAC parameter 13 (internal use) Read only. Not included in SEP? response 0x700001E - GEMAC parameter 14 (internal use) Read only. Not included in SEP? response 0x700001F - GEMAC parameter 15 (internal use) Read only. Not included in SEP? response 4.5 Default-Stage-N Parameter Settings If you purchased an E-861 controller without a NEXACT® stage parameter settings as listed below are stored on the controller's non-volatile memory. If you operate a NEXACT® stage with an E-861 NEXACT® controller, you can send the following query commands via a terminal program like PITerminal, or via the command entry of PIMikroMove: ■ HPA? to get a list of all available parameters with short descriptions ■ SPA? to get all parameters with their present values as they are set in the controller’s volatile memory Note that with Default-Stage-N parameter settings, e.g. reference and limit switches are not recognized (0x32 for limit switches is set to 1), and position is commanded in counts. The response to SPA? delivers the parameter settings: ==== new connection: E-861 on RS-232: COM1, 9600 baud ==== >>*IDN? <<(c)2010 Physik Instrumente(PI) Karlsruhe,E-861 Version 7.2.0 >>spa? <<1 0x1 = 100 <<1 0x2 = 50 <<1 0x3 = 0 <<1 0x4 = 2000 www.pi.ws E-861 PZ205E Release 1.2.1 Page 49 Controller Parameters <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 <<1 www.pi.ws 0x8 0xA 0xB 0xC 0xE 0xF 0x14 0x15 0x16 0x17 0x18 0x2F 0x30 0x31 0x32 0x36 0x3C 0x3F 0x47 0x49 0x4A 0x4B 0x50 0x5A 0x5B 0x94 0x95 0xAC 0x401 0x402 0x403 0x7000000 0x7000001 0x7000002 0x7000003 0x7000004 0x7000201 0x7000202 0x7000203 0x7000204 0x7000205 0x7000206 0x7000207 0x7001A00 0x7000601 0x7000010 0x7000011 0x7000012 0x7000013 0x7000014 0x7000015 0x7000016 0x7000017 0x7000018 0x7000019 0x700001A 0x700001B 0x700001C 0x700001D 0x700001E 0x700001F = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 1000000.0 1000000.0 500000.0 500000.0 1 1 0 2147483647.0 0.0 2147483647.0 0 2147483647.0 -2147483647.0 0 1 10 DEFAULT_STAGE-N 0.010000 0 250000.0 10000000.0 10000000.0 100000.0 50000 1 10000.000 0.800 200.000 100 100 0 -2147483647.0 2147483647.0 10 55.0000 10 200 2000 2000 1500 2000 2000 100 0 counts 252 10 60 0 15 0 0 128 0 128 0 0 255 0 0 70 E-861 PZ205E Release 1.2.1 Page 50 System Description 5 System Description 5.1 Basic Elements For successful operation of the E-861, you should familiarize yourself with the following features of the device. Logical Axes: The E-861 controls one logical axis of a mechanics. See "Accessible Items and Their Identifiers" (p. 53) for details. Input and Output Signals: Input and output signals can be used for triggering purposes, and the input signals of a joystick can furthermore be used for velocity control of the E-861. See "Accessible Items and Their Identifiers" (p. 53) for details. Communication Interfaces: The E-861 can be controlled from a host computer (not included) with ASCII commands sent via: ! ■ RS-232 serial connection ■ USB interface: The USB drivers will make the USB interface appear to all software on the host PC as a new COM port. That port will be present only when the controller is connected via USB and powered on. CAUTION Never connect the RS-232-IN and USB connectors of the same controller to a PC at the same time as this can cause damage to the controller. Up to 16 E-861 controllers can be controlled from a single host computer interface via a daisy chain. See "Connecting Controller or Daisy-Chain Network to Host PC" (p. 27) for more information. Controller Firmware: The firmware comprises the ASCII command set and the controller parameters. For version information and updates see "Firmware Update". ■ www.pi.ws ASCII Commands: E-861 PZ205E Release 1.2.1 Page 51 System Description The E-861 understands the PI General Command Set (GCS; version 2.0). The PI General Command Set (GCS) is supported by a wide range of PI systems. This command set is well-suited for positioning tasks with one or more axes. The command set itself is independent of the specific hardware (controller or attached stages). Commands are used, for example, to set operating modes, to initiate motion of the mechanics and to query system and motion values. See "GCS Commands" (p. 107) for more information. ■ Controller Parameters: The hardware basics of the motion system (controller and connected mechanics) are mirrored in controller parameters. Some of the parameters are protected so that their factory settings cannot be changed, other parameters can be modified by the user to adapt the system to the individual application. See "Controller Parameters" (p. 35) and "Customizing the System” (p. 89) for more information. ■ Special Features: Data recorder: The E-861 comprises a real-time data recorder. It is able to record several signals (e.g. current position, analog input) from different data sources (e.g. logical axes or input channels). See "Data Recording" (p. 88) for more information. Macros: The E-861 can store macros. The macro feature allows defining command sequences and storing them permanently in nonvolatile memory in the device. It is possible to define a macro that will be executed automatically every time the E-861 is started, facilitating stand-alone operation without a host computer. See "Working with Controller Macros" (p. 82) for more information. ■ Control algorithm for Closed-Loop Operation: For better position accuracy and performance, the E-861 can be operated in closed-loop mode. A proportional-integral-differential (P-I-D) servo-control algorithm (with sensor feedback) will then apply corrections to the internal control value. See "Tuning PID Control Parameters" (p. 95) for more information. Software on Host PC Usually, a host computer is used to operate or at least configure the E-861. Therefore an ample array of software tools for installation on the host computer comes with the E-861. For a complete list of all software on the E-861 CD, see "Software Description" (p. 10). www.pi.ws E-861 PZ205E Release 1.2.1 Page 52 System Description 5.2 Accessible Items and Their Identifiers The identifiers listed below are used to address the appropriate items with the commands of the PI General Command Set (GCS) which is supported by the firmware of the E-861. The identifiers of the following items are factory defaults and cannot be changed by the user: www.pi.ws ■ Logical axis/PiezoWalk channel: one axis/PiezoWalk channel, the identifier is 1. In the E-861 firmware, motion for logical axes (i.e. for the directions of motion of a stage) is commanded with the closed-loop move commands MOV (p. 151) and MVR (p. 153) and with the open-loop move commands OMA (p. 158) and OMR (p. 161). Motion for PiezoWalk channels (i.e. for single NEXACT® linear drives) is commanded using the open-loop move commands OAD (p. 155) and OSM (p. 163). Since the E-861 is a single-axis / single-channel device, the terms "axis" and "PiezoWalk channel" can be used synonymously. ■ Analog input channels: six channels, the identifiers are 1 to 6. "Genuine" analog input lines, with the identifiers 1 to 4, are Input 1 to Input 4 on the I/O socket (p. 218). Their number is reported by the TAC? command (p. 185), and their values can be queried with the TAV? command (p. 185). Note that these lines can also be used for digital input (see below). Further analog input lines are located on the Joystick socket (p. 220): channel 5 is the input line for the joystick axis and 6 the input line for the joystick button. They are not reported by TAC? and TAV? commands. See also the Joystick information below. The values of all six channels can be recorded using the record option 81 of the DRC command (p. 122). ■ Digital output lines: four lines, the identifiers are 1 to 4. 1 to 4 identify the Output 1 to Output 4 digital output lines on the I/O socket (p. 218). See "Using Trigger Input and Output" (p. 31) for more information. ■ Digital input lines: four lines, the identifiers are 1 to 4. 1 to 4 identify the Input 1 to Input 4 digital input lines on the I/O socket (p. 218) which can also be used for analog input (see above). See "Using Trigger Input and Output" (p. 31) for more information. ■ Joystick: one joystick device, identifier is 1 with all joystick-related commands. Note that the second joystick device shown in some responses is an analog input which is currently deactivated and provided for future applications. E-861 PZ205E Release 1.2.1 Page 53 System Description The E-861 supports one axis and one button of the joystick. The identifier of the joystick axis is 1 with joystick-related commands (JAS? (p. 138), JAX (p. 139), JAX? (p. 140), JDT (p. 141), JLT (p. 142), JLT? (p. 143)) and 5 with the DRC command, record option 81. The identifier of the joystick button is 1 with the joystick-related JBS? command (p. 140) and 6 with the DRC command, record option 81. See "Joystick Control" (p. 79) and "Joystick Socket" (p. 220) for more information. ■ Data recorder tables (memory tables for recorded data): 2 tables with 1024 points per table, the identifiers are 1 and 2. See "Data Recording" (p. 88) for more information. Each E-861 must have a unique controller address. The controller address can be changed by the user if , for example, a daisy chain network is to be set up: ■ 5.3 Controller address: the E-861 device address in the range of 1 to 16 and, in a daisy-chain, one controller must have address 1. The address can be set with the DIP switches on the front panel, see "DIP Switch Settings" and "Target and Sender Address" (p. 110) for details. Modes of Operation In this section you find information about the following items: ■ Servo modes ■ Motion modes, including: A short description of the nanostepping mode working principle A short description of the analog mode working principle An assignment of move commands to motion and servo modes ■ Changing motion and servo mode including states and transitions implemented in the controller’s firmware ■ PiezoWalk Driving mode parameter, i.e. automatic alternating between nanostepping and analog motion modes, including: A short description of the PiezoWalk Driving mode parameter Advantages of alternating motion modes What to consider if using automatic alternating of the two motion www.pi.ws E-861 PZ205E Release 1.2.1 Page 54 System Description modes Motion sequence Sequence of transitions and states ■ 5.3.1 Application notes Servo Modes The E-861 provides the following servo modes: ■ Open-loop operation (also referred to as "servo-off state" in this document): sensor feedback is not used ■ Closed-loop operation (also referred to as "servo-on state" in this document): sensor feedback participates in the internal control value generation. A proportional-integral-differential (P-I-D) servo-controller is used to generate corrections to the internal control value. In addition, velocity, acceleration, deceleration as well as settle time and settle window values are accessible as parameters. See "Parameters for Customizing" (p. 90) and “Tuning PID Control Parameters” (p. 95) for more information. The servo mode can be selected with the SVO command (p. 183). Openloop operation is active after power-on. Using a start-up macro, you can set up the device to start with closed-loop operation (see "Working with Controller Macros" (p. 82) for more information). You can query the current servo mode using the SVO? command (p. 185) or with the #4 (p. 114) and SRG? commands (p. 178) which have a bitcoded response. For additional information see also "Control Value Generation" (p. 68), "Control Algorithm" (p. 76) and "PiezoWalk Driving Mode" (p. 63). ! www.pi.ws CAUTION If no sensor is present in your system: ■ Do not switch servo on (SVO command) ■ Do not send commands for closed-loop motion, like MOV or MVR ■ Do not send the open-loop commands OMA and OMR, since they use a sensor, too E-861 PZ205E Release 1.2.1 Page 55 System Description Otherwise the connected mechanics can run into the hard stop at full speed, which may cause damage to your hardware setup. 5.3.2 Motion Modes With the NEXACT® design two basic motion modes are realized based on the design of a NEXACT® piezo drive module: A piezo drive module consists of four NEXACT® piezo actuators. The individual actuators themselves each consist of two segments (Figure 4) of piezo bender elements. Figure 4: Design of NEXACT® piezo drive module. The four NEXACT® piezo actuators each consist of two segments. The numbers 1, 2 designate the actuator pairs which are controlled in an identical way The actuators of a piezo drive module are all cyclically controlled in pairs (= actuator pairs). When a drive contains several piezo drive modules, corresponding actuator pairs are controlled together. Every NEXACT® drive therefore has to be controlled by means of four different signals for the segments (U1 to U4). The voltage range for the bender elements is -10 to +45 V. The feed is achieved by coordinated control of the segments. The actuator pairs have different displacements. This causes the piezo drive module to execute a stepping motion on the runner (see Nanostepping mode). The two motion modes of the NEXACT® linear drives are implemented in the E-861 firmware. www.pi.ws E-861 PZ205E Release 1.2.1 Page 56 System Description Nanostepping mode Characteristics: ■ Stepping motion over long distances ■ High velocity over longer travel ranges, limited only by the length of the runner ■ Motion consists of multiple steps of about 10 µm in length at minimum (without load; 5 µm with 10 N load), values can vary depending on the stage type. Control: In nanostepping mode the segments of both pairs of legs are controlled with a phase shift. Decisive for the feed of the runner are the resulting voltages below: Actuator pair 1 (U1, U2 in Figure 5) Clamping voltage Actuator pair 2 (U3, U4 in Figure 5) Feed voltage Figure 5: The runner moves in the X-direction. The module is preloaded against the runner in Z-direction. www.pi.ws E-861 PZ205E Release 1.2.1 Page 57 System Description The motion is realized by coordinated control of the feed and clamping voltages for the piezo stacks in the NEXACT® drive, and can cover the whole travel range of the mechanics. Analog mode Characteristics: ■ High-dynamics motion, limited by the step size in analog mode (a few µm) ■ Positioning accurate to one picometer (open-loop) Control: All actuators are controlled in phase. The clamping voltage in analog mode is 17.5 V, and hence the mean value of the possible piezo voltages of both segments. The maximum travel range is thus available for the deflection (see Figure 6). NOTES The actual step size can vary with the applied load. The step size can differ for both directions of motion, depending on the direction of force applied by the load: steps in the direction of the load may be larger than the average step size, steps against the load may be smaller. The following motion commands are available: ■ Open-loop operation (servo off), nanostepping mode: OSM (p. 163) OMA (p. 158) OMR (p. 161) www.pi.ws E-861 PZ205E Release 1.2.1 Page 58 System Description Figure 6: Analog mode: All NEXACT ® piezo actuators are in contact with the runner. The actuator pairs 1 and 2 are controlled in an identical way (segment voltages U1 = U3, U2 = U4) NOTE With the OSM command steps are commanded using floating point numbers, i.e. motion is not limited to complete steps only. 5.3.3 ■ Open-loop operation (servo off), analog mode: OAD (p. 155) ■ Closed-loop operation (servo on): MOV (p. 151) MVR (p. 153) Changing Motion and Servo Mode The working principle of a NEXACT® linear drive requires defined transitions between the individual motion and servo modes. For that purpose, the following transitions and states are provided (the numbers given below identify the transitions and states in the responses to the #4 command (p. 114) and the SRG? command (p. 178)): ■ Relaxing transitions (1) in which the NEXACT® linear drive is brought to a full-holding-force, zero-drive-voltage Relaxed state (3). Relaxing transitions are performed for the following actions: www.pi.ws Switching the servo mode off with SVO 0 E-861 PZ205E Release 1.2.1 Page 59 System Description to change from closed-loop motion (MOV (p. 151), MVR (p. 153)) to open-loop nanostepping motion (OSM (p. 163), OMA (p. 158) or OMR (p. 161)) or to open-loop analog motion (OAD (p. 155)) includes an automatic Relaxing procedure. ■ Starting Relaxing manually with RNP 0 Sending an RNP command (p. 168) is required in open-loop operation each time you want to change from nanostepping motion (OSM, OMA or OMR) to analog motion (OAD) or vice versa. It is also required if you want to change from analog motion to closed-loop operation. Transitions which prepare the NEXACT® linear drive automatically for the desired motion mode by adjusting the drive voltages (transport and clamping voltages) accordingly. The duration of Relaxing transition (1), Go to analog transition (2) and Go to motion transition (5) is determined by the slew rate (parameter ID 0x7000002). Note that for all figures below, the following is valid: The numbers in brackets give the transition state (bits 8 to 11 in the response SRG? ) and the servo mode (response to SVO? ). #7 command (p. 116) queries if the controller is ready to perform a new command. The response ° means that the controller is busy. Transitions for open-loop analog motion: Go to analog transition (2), is done by the first OAD sent for a NEXACT® linear drive which is in the Relaxed state. Go to analog transition (2) brings the drive in the Analog state (0). Once the drive is in the Analog state, each subsequent OAD command will be executed immediately without any Go to analog transition. www.pi.ws E-861 PZ205E Release 1.2.1 Page 60 System Description Figure 7: Changing states with a first sent OAD (open-loop analog motion) Transitions for open-loop nanostepping motion: Go to motion transition (5) in open-loop operation, is done by the first OSM, OMA or OMR sent for a NEXACT® linear drive which is in the Relaxed state. Go to motion transition (5) brings the drive in the In Motion state (4). Once the drive is in the In Motion state, each subsequent OSM, OMA or OMR command will be executed immediately without any Go to motion transition. Figure 8: Changing states with a first sent OSM (open-loop nanostepping motion). Analog transitions are valid for first sent OMA or OMR commands. www.pi.ws E-861 PZ205E Release 1.2.1 Page 61 System Description • Transitions for closed-loop motion Go to motion transition (5) in closed-loop operation, is done when SVO 1 is sent to switch servo on for a NEXACT® linear drive which is in the Relaxed state. Go to motion transition (5) brings the drive in the In Motion state (4). Note that after switching servo on the controller can be busy for approximately 100 ms, depending on slewrate setting. Once the drive is in the In Motion state in closed-loop operation, each subsequent closed-loop move command (e.g. MOV or MVR) will be executed immediately without any Go to motion transition. Note that if the drive is in open-loop operation and in the In Motion state (i.e. open-loop nanostepping motion was done with OSM, OMA or OMR), switching servo on will cause no Go to motion transition, and the drive is immediately ready for closed-loop motion. Figure 9: Changing states with first sent SVO command for subsequent closedloop motion www.pi.ws E-861 PZ205E Release 1.2.1 Page 62 System Description 5.3.4 PiezoWalk Driving Mode Closed-loop motion can be realized either as nanostepping motion or as a mix of analog mode motion and nanostepping motion. The decision for one of the options depends on your application. See below for the decision criteria and further details. Switching between the two options is done via the PiezoWalk Driving Mode parameter (ID 0x7001A00). Note that only if servo is on you can activate automatical alternating of motion modes by setting the PiezoWalk Driving Mode parameter to 1 with the SPA command (p. 175). Thus the following two options exist with closed-loop operation: A) With 0x7001A00 set to 0: ■ only nanostepping mode is used ■ PID parameters for nanostepping mode are: 0x1 for P-term 0x2 for I-term 0x3 for D-term B) With 0x7001A00 set to 1: ■ An alternating sequence of analog mode and nanostepping mode is used ■ Two PID parameter sets: PID set for nanostepping mode, as listed above PID set for analog mode, as listed below: 0x401 for P-term 0x402 for I-term 0x403 for D-term Advantages of Alternating Motion Modes www.pi.ws ■ Increased stiffness when axis is on target (compared to use of nanostepping mode) ■ Provided that system features appropriate mechanics, increased accuracy can be obtained due to two PID parameter sets E-861 PZ205E Release 1.2.1 Page 63 System Description ■ The piezo voltages can be reduced (compared to motion in pure nanostepping mode), increasing the actuators' lifetime What You Have to Consider When Closed-Loop Motion is Realized With Alternating Motion Modes ■ Depending on load and motion direction, settling can require repeated change of motion mode. This may cause a repeated opening and closing of the servo-loop. ■ Positioning may take longer than if you use only nanostepping mode. ■ For accurate positioning, sensors of the system must have a minimum resolution of 20 nm. Motion Sequence How to perform closed-loop motion as a mix of analog and nanostepping mode: 1 Make sure that servo is on You can check the servo state using the SVO? command (p. 185) (response must be 1=1). To activate servo send: SVO 1 1 2 3 Make sure that parameter 0x7001A00 is set to 1. You can check the parameter value using the SPA? command (p. 178). Send SPA? 1 0x7001A00 To set the parameter send: SPA 1 0x7001A00 1 Command motion with MOV or MVR. Motion starts and ends in analog mode where the target position is maintained with maximum stiffness, since both piezo stack pairs are in contact with the runner of the NEXACT® linear drive. See Figure 10 for detailed motion sequence. With each change of motion mode (from analog mode to nanostepping mode and vice versa) a Relaxing procedure is performed automatically, see "Changing Motion and Servo Mode" (p. 59), and servo is switched off and on automatically. The criteria for the changes between the motion modes are given by the E-861 firmware and cannot be changed. www.pi.ws E-861 PZ205E Release 1.2.1 Page 64 System Description Any changes of piezo voltage -as they occur with Relaxing procedures can induce undesired motion. Therefore checks as described in Figure 10 are necessary. Figure 10: Closed-loop motion sequence with changes from analog mode to nanostepping mode and vice versa www.pi.ws E-861 PZ205E Release 1.2.1 Page 65 System Description Sequence of Transitions and States With alternating motion modes, transitions and states performed are as described below: Figure 11: State machine for alternating motion modes #7 command (p. 116) queries if the controller is ready to perform a new command. The response ° means that the controller is busy during both rearranging-the-actuators steps. The steps illustrated in the figure above consist of the transitions and states as listed below. The numbers in brackets give the transition state (bits 8 to 11 in the response SRG? , see SRG? command (p. 178)). ■ Rearrange actuators for nanostepping mode consists of : Relaxing transition (1) Relaxed state (3) Go to motion state (5) A delay time set by parameter ID 0x7000004 ■ Nanostepping mode consists of: In motion state (4) ■ Rearrange actuators for analog mode consists of: Relaxing transition (1) Relaxed state (3) Go to analog state (2) A delay time set by parameter ID 0x7000004 www.pi.ws E-861 PZ205E Release 1.2.1 Page 66 System Description ■ Analog mode consists of: Analog state (0) 5.3.5 Application Notes Sending an RNP command brings the NEXACT® linear drive to a fullholding-force, zero-drive-voltage Relaxed state. Depending on the application conditions and parameter settings sending an RNP command causes a positional error of a few tens of nanometers up to one micrometer. After switching from closed-loop to open-loop operation using the SVO command, the open-loop motion commands (OAD (p. 155), OSM (p. 163), OMA (p. 158), OMR (p. 161)) can be sent immediately. After open-loop analog motion was done with OAD, an RNP command (p. 168) must be sent before servo can be switched on with SVO. In open-loop operation, an RNP command must be sent each time the motion mode is to be changed from nanostepping (OSM, OMA, OMR) to analog (OAD) motion and vice versa. The following actions can take up to four times the slewrate value (parameter ID 0x7000002): ■ Switching servo on or off ■ The first OAD after a change of motion mode ■ The first OSM or OMA or OMR after a change of motion mode ■ The RNP procedure If a required transition between different motion modes was omitted, the E-861 sends an error message. You can query the current state of the system (E-861 and NEXACT® linear drive) using the #4 command (p. 114) or the SRG? command (p. 178). With #7 (p. 116), you can query if the controller is ready to perform a new command. If the controller responds with °, it is not ready. While a joystick connected to the E-861 is enabled with the JON command (p. 145), the servo can be switched on or off for the axis, and no transition is required. The axis can be controlled immediately by the joystick. www.pi.ws E-861 PZ205E Release 1.2.1 Page 67 System Description The recommended maximum step frequency for NEXACT® drives is 800 Hz. This applies to continuous operation. For short periods it is also possible to work with higher frequencies (see considerations regarding velocity in the Glossary of the included N310T0011 Technical Note with details about the NEXACT® Technology). 5.4 Control Basics In this section you find information about the following items: 5.4.1 ■ Control value generation for both servo modes ■ Trajectory generation ■ Control algorithm ■ Motion error handling Control Value Generation The E-861 features closed-loop and open-loop servo modes for control of the connected mechanics. The servo mode can be selected with the SVO command (p. 183). You can query the current servo mode using the SVO? command (p. 185) or with the #4 (p. 114) and SRG? commands (p. 178) which have a bitcoded response. Open-loop mode is active after power-on. Using a start-up macro, you can set up the device to start with closed-loop mode. The macro feature allows defining command sequences and storing them permanently in non-volatile memory in the controller. In addition to the servo mode setting you can, for example, program conditional execution of motion. See "Working with Controller Macros" (p. 82) for more information. www.pi.ws E-861 PZ205E Release 1.2.1 Page 68 System Description ■ Closed-loop mode (servo on) The block diagram below shows how the E-861 generates the output voltage for the connected axis (NEXACT® stage) from given input for closed-loop mode. NEXACT® stages are generally operated in closed-loop mode. With the E-861, a trajectory generator calculates the motion profile from the given target position, velocity, acceleration and deceleration. The position error resulting from the difference of the generated trajectory and the current position (sensor feedback) is passed through a proportional-integral-differential (P-I-D) algorithm. The result is the control value for the drive electronics integrated in the E-861. With the E-861 closed-loop motion can be performed either as nanostepping motion or as a mix of analog mode motion and nanostepping motion. Therefore there are two PID parameter sets, one for nanostepping motion and one for analog motion. See "PiezoWalk Driving Mode" (p. 63) for how to activate automatic alternating of motion modes and details regarding the PiezoWalk Driving mode's motion sequence. With nanostepping motion the control value is in a range of -32767 to 32768. This value is processed so as to provide a constant input to the drive electronics (by an integration step) and to obtain a residual value between -32767 to 32768 as input for a step table. This step table provides the four segment voltages U1 to U4. These are responsible for the motion of the piezo segments in the NEXACT® drive. See also "Motion Modes" (p. 56) or read the N310T0011 Technical Note delivered with the controller for further details regarding the www.pi.ws E-861 PZ205E Release 1.2.1 Page 69 System Description nanostepping motion sequence and how segment voltages are formed. With analog motion the control value range of -32767 to + 32768 is used according to the bending motion. Here, segment voltages U1 equals U3 and U2 equals U4. You can use the following move commands: for usual moves: MOV (p. 151), MVR (p. 153), GOH (p. 135), STE (p. 181) for reference moves: FNL (p. 129), FPL (p. 131), FRF (p. 133) for hardware evaluation: FED (p. 128) ■ Open-loop mode (servo off) The block diagram below shows how the E-861 generates the output voltage for the connected axis (NEXACT® stage) from given input for open-loop mode. The open-loop mode omits servo-control algorithm. With open-loop mode motion can be performed as nanostepping motion using the OSM (p. 163), OMA (p. 158) and OMR (p. 161) commands or as analog motion using the OAD (p. 155) command. Note that OMA and OMR commands can only be used if your system features a sensor, otherwise the connected mechanics can run into the hard stop at full speed. The commanded open-loop target can be queried using OMA? (p. 160) www.pi.ws E-861 PZ205E Release 1.2.1 Page 70 System Description respectively OAD? (p. 157). With open-loop mode, you can also use the following move commands: for reference moves: FNL (p. 129), FPL (p. 131), FRF (p. 133) for hardware evaluation: FED (p. 128) Before absolute targets can be commanded (MOV, OMA), the mechanics must be referenced. Depending on the reference mode setting, even relative moves require referencing. See "Referencing" (p. 51) for details. Joystick operation is possible with both closed-loop and open-loop operation. While a joystick connected to the E-861 is enabled with the JON command, this joystick controls the axis velocity ("commanded velocity" output by the trajectory generator). During joystick control, the target position is set to the travel range limits given by the Max_Travel_Range_pos and Max_Travel_Range_neg parameters (0x15 and 0x30, see "Travel Range Adjustment" (p. 92) for more information). When disabling a joystick, the target position is set to the current position for joystick-controlled axes. For further joystick-related commands see the "Joystick Control" (p. 79). See "Motion Modes" (p. 56) for a short description of the nanostepping and analog motion. 5.4.2 Trajectory Generation A trajectory generator performs calculations to determine the current position, velocity, acceleration and deceleration of the axis at any given moment in time ("motion profile"). These values are called the commanded values (see also "Control Value Generation" (p. 68)). The profile that is created by the trajectory generator of the E-861 depends on the motion parameters given by corresponding commands, by controller parameters and/or by a joystick: Motion Parameter Acceleration (A) Corresponding Commands ACC (p. 118), ACC? (p. 118) for closed-loop mode OAC (p. 154), OAC? (p. 155) for open-loop mode www.pi.ws Corresponding Controller Parameter Current closed-loop acceleration (parameter ID 0xB; user unit/s2) Changed by ACC or by SPA / SEP, can be saved with WPA Current open-loop acceleration (parameter ID 0x7000202; step cycles/s2) Changed by OAC command or by SPA / E-861 PZ205E Release 1.2.1 Notes Limited by parameter 0x4A (Maximum closed-loop acceleration) Limited by parameter 0x7000205 (Maximum open-loop acceleration) Page 71 System Description Motion Parameter Corresponding Commands Deceleration (D) DEC (p. 119), DEC? (p. 120) for closed-loop mode ODC (p. 157), ODC? (p. 158) for open-loop mode Velocity (V) VEL (p. 188), VEL? (p. 189) for closed-loop mode OVL (p. 165), OVL? (p. 166) for open-loop mode Target www.pi.ws Corresponding Controller Parameter SEP, can be saved with WPA Current closed-loop deceleration (parameter ID 0xC; user unit/s2) Changed by DEC (p. 119) or by SPA / SEP, can be saved with WPA Current open-loop deceleration (parameter ID 0x7000203; step cycles/s2) Changed by ODC command or by SPA / SEP, can be saved with WPA Current closed-loop velocity (parameter ID 0x49; user unit/s) Changed by VEL or by SPA / SEP, can be saved with WPA Current open-loop velocity (parameter ID 0x7000201; step cycles/s) Changed by OVL command or by SPA / SEP, can be saved with WPA MOV (p. 151), MVR (p. 153), GOH (p. 135), STE (p. 181) for closed-loop mode E-861 PZ205E Release 1.2.1 Notes Limited by parameter 0x4B (Maximum closed-loop deceleration) Limited by parameter 0x7000206 (Maximum open-loop deceleration) Limited by parameter 0xA (Maximum closedloop velocity) respectively by parameter 0x7000204 (Maximum open-loopvelocity) A joystick connected to the E-861 which is enabled with the JON command (p. 145) applies a factor to the current velocity set with VEL respectively OVL, see "Joystick Control" (p. 79) for details. A joystick connected to the E-861 which is enabled with the JON command (p. 145) sets the travel range limits Page 72 System Description Motion Parameter Corresponding Corresponding Commands Controller Parameter OMA (p. 158), OMR (p. 161), OSM (p. 163) for open-loop mode Notes as target position. When disabling a joystick, the target position is set to the current position for joystick-controlled axes. See "Joystick Control" (p. 79) for details. When the servo is switched on with the SVO command (p. 183) or when axis motion has been stopped with #24 (p. 117), STP (p. 182) or HLT (p. 137), the target position is set to the current position. Note that with open-loop mode the dimensions use step cycles instead of, e.g., µm. Furthermore, be aware that the distance achieved by step cycles in openloop is not as reproducible as a distance commanded in closed-loop mode: with open-loop changing conditions such as changed load or motion direction are not compensated by a servo loop. www.pi.ws E-861 PZ205E Release 1.2.1 Page 73 System Description The trajectory generator of the E-861 supports trapezoidal point-to-point profiles only: the axis accelerates linearly (at the given acceleration value) until it reaches the given velocity. It continues in motion at that velocity, then decelerates linearly (using the deceleration value) until it stops at the specified target position. Figure 12: Simple trapezoidal point-to-point profiles, A = acceleration, D = deceleration, V = velocity If deceleration must begin before the axis reaches the given velocity, the profile will have no constant velocity portion, and the trapezoid becomes a triangle. Figure 13: Simple trapezoidal point-to-point profile, A = acceleration, D = deceleration, no constant velocity The slopes of the acceleration and deceleration segments may be symmetric (if acceleration equals deceleration) or asymmetric (if acceleration is not equal to deceleration). The acceleration parameter is always used at the start of the motion. Thereafter, the acceleration value will be used when the absolute velocity is increasing, and deceleration will be used when the absolute velocity is decreasing. www.pi.ws E-861 PZ205E Release 1.2.1 Page 74 System Description If no motion parameters are changed during the motion then the acceleration value will be used until the maximum velocity is reached, and the deceleration value will be used when ramping down to zero. Figure 14: Complex trapezoidal profile, showing parameter changes; A = acceleration; D = deceleration; V1, V2, -V2 = velocities It is acceptable to change any of the motion parameters while the axis is moving. The profile generator will always attempt to remain within the legal bounds of motion specified by the parameters. If, during the motion, the target position is changed in such a way that an overshoot is unavoidable, the profile generator will decelerate until stopped, then reverse direction to move to the specified position. www.pi.ws E-861 PZ205E Release 1.2.1 Page 75 System Description 5.4.3 Control Algorithm Figure 15: P-I-D algorithm with offset compension The E-861 controller for NEXACT® stages uses a proportional-integraldifferential (P-I-D) algorithm. See "Tuning the PID Control Parameters" (p. 95) for how PID control parameters can be adjusted. The controller features two sets of PID parameters. One is used if nanostepping motion is performed. The second is used for analog motion: ■ PID parameter IDs for nanostepping mode are: 0x1 for P-term 0x2 for I-term 0x3 for D-term ■ PID parameter IDs for analog mode : 0x401 for P-term 0x402 for I-term 0x403 for D-term NOTE The PID set for analog motion is only active if the automatic alternating of motion modes is activated by the PiezoWalk Driving mode parameter (ID 0x7001A00) and if stage is in analog motion. www.pi.ws E-861 PZ205E Release 1.2.1 Page 76 System Description See "PiezoWalk Driving Mode" (p. 63) for further information about alternating motion modes. See also "Controller Parameters" (p. 35) for detailed parameter descriptions and parameter handling. When you are working with the host software from PI, you can select your stage type from a database which contains, amongst others, initial values for the parameters of the P-I-D algorithm. The host software will then send the appropriate parameter values to the controllers volatile memory. See also "How to Store Parameter Settings" (p. 37) and "How to Create a New Stage Type in the PI Stages Database" (p. 98) for more information. 5.4.4 Motion Error Handling Under certain circumstances, the current axis position (position feedback) may differ from the commanded position by an excessive amount. Such an excessive position error can indicate a potentially dangerous condition such as drive or encoder failure. With the E-861 in closed-loop mode, it is possible to detect an excessive position error in the form of a "motion error" (error code: -1024). The "motion error" criterion is given by the Maximum position error parameter (ID 0x8). You should set that parameter to the maximum position error which is tolerable in your application. See "Controller Parameters" (p. 35) for more information on how to change parameter values. If the position error falls out of the window formed by the Maximum position error parameter, the servo is switched off automatically for the axis concerned, all motion is stopped immediately, and error code -1024 is set (see figure below). Proceed as follows in case of a motion error: www.pi.ws 1 Get the code of the last occurred error. In case of a motion error the response is -1024. The query resets the error to 0. 2 Check your hardware and make sure that it is safe for the stage to move the axis. 3 Switch the servo on for the axis using the SVO command (p. 183). This sets the target position to the current position of the axis. E-861 PZ205E Release 1.2.1 Page 77 System Description The axis is now able to move again, and you can command a new target position. Figure 16: Motion error handling www.pi.ws E-861 PZ205E Release 1.2.1 Page 78 Joystick Control 6 Joystick Control ! CAUTION Do not enable a joystick via command when no joystick device is connected to the controller hardware. Otherwise the corresponding controller axis may start moving and could damage your application setup. NOTE Before a joystick can be operated correctly, a calibration routine may need to be performed. Activating the joystick before calibration may cause the axis to start moving even though the joystick is in the neutral position. To calibrate a joystick axis of C-819.20 turn the corresponding "Adjust" knob on the joystick until the axis stops. E-861 controllers offer convenient manual motion control. One C-819.20 analog joystick device can be connected to the Joystick socket (p. 220) of the E-861. The E-861 supports one axis and one button of the joystick device. See "Accessible Items and Their Identifiers" (p. 53) for the joystick related identifiers to use in commands. Figure 17: C-819.20 joystick device The two joystick axes of an C-819.20 joystick device can be connected through the C-819.20Y cable to two E-861 controllers. In this case, on both controllers the joystick axis 1 must be selected for operation (the Y-cable maps the signals internally). If the "Axis Y" branch of the Y-cable is to be used, the "Axis X" branch must also be connected to a controller to provide www.pi.ws E-861 PZ205E Release 1.2.1 Page 79 Joystick Control the supply power for the joystick device. When a joystick is connected directly to the controller, it is the velocity of the motion axes that is determined by the displacement of the corresponding joystick axes. For each joystick axis there is a lookup table that defines the velocity response for a certain amplitude of the joystick axis. The values in the lookup table are factors which will during joystick control be applied to the velocity set with VEL (p. 188) (closed-loop operation) or OVL (p. 165) (open-loop operation) for the controller axis, the range is -1.0 to 1.0. To change a lookup table, you can load default profiles provided by the controller, or you can write a custom profile to the lookup table point-bypoint (256 values). While a joystick is active on a controller axis which is equipped with a position sensor, it is possible to switch from open-loop to closed-loop operation and vice versa with the SVO command (p. 183). When disabling a joystick, the target position is set to the current position for joystick controlled axes which are in closed-loop operation. Commands for joystick handling: JON (p. 145) JON? (p. 145) JAX (p. 139) JAX? (p. 140) JAS? (p. 138) JBS? (p. 140) www.pi.ws Enables or disables a specified joystick device for joystick operation. While a joystick is active on a controller axis, move commands are neither accepted from the command line nor from macros for that axis. Queries the current activation state of the joystick devices. Sets the controller axis which is to be controlled by a joystick axis. Each axis of a controller can only be controlled by one joystick axis. Queries the current assignment of controller axes to joystick axes. Queries the current status of joystick axes. The response corresponds to the current displacement of the joystick axis and is the factor which is currently applied to the current valid velocity setting of the controlled motion axis, according to the lookup table. Queries the current status of joystick buttons. The response indicates if the joystick button is pressed; 0 = not pressed, 1 = pressed. E-861 PZ205E Release 1.2.1 Page 80 Joystick Control JDT (p. 141) Sets predefined lookup-table types for the joystick axes. The current lookup-table content for the specified joystick axis is overwritten by the selection made with JDT. The E-861 provides the following lookup-table types for special applications: 1 = linear (power-on default) 2 = parabolic www.pi.ws JLT (p. 142) Fills the lookup table for a joystick axis point-by-point. This overwrites the current lookup table content for this joystick axis. See the command description for an example. JLT? (p. 143) Reads the current lookup-table values. E-861 PZ205E Release 1.2.1 Page 81 Working with Controller Macros 7 Working with Controller Macros The macro feature allows defining command sequences and storing them permanently in non-volatile memory in the controller. Each defined macro can be called up by its own user-defined name. In addition, it is possible to define a macro that will be executed automatically every time the E-861 is started, making possible stand-alone operation without a host computer. See the subsections below and the MAC command (p. 146) description for more details and examples. NOTE Macros can only be real-time processed if controller is not busy with extensive communication, as e.g. reading out the data recorder. The more commands are sent during performance of a macro the less realtime processing of the macro is possible. NOTE PIMikroMove offers a comfortable macro editor on the Controller macros tab card. Furthermore, PIMikroMove offers the "Host macro" feature which makes it possible to save macros on the host PC. 7.1 Defining Macros To define a macro command sequence, first activate macro recording mode with the command MAC BEG where is a user-settable name with a maximum of 8 characters. While in macro recording mode, commands are not executed but stored in macro storage. Recording mode is exited by the MAC END command. A macro can call another macro. Further nesting is not allowed (only one nesting level). A macro can call itself to form an infinite loop. During macro recording no macro execution is allowed. A macro can be overwritten by a macro with the same name. A running macro sends no responses to any interface. This means questioning commands are allowed in macros but not answered and therefore useless. www.pi.ws E-861 PZ205E Release 1.2.1 Page 82 Working with Controller Macros The following commands provided by the E-861 can only be used in macros: DEL (p. 120), MEX (p. 149) and WAC (p. 189). Using MEX and WAC, it is possible to set stop conditions or conditions for further macro processing. Macro recording is possible when a joystick is active on the axis. Example 1 (for a system with position sensor): Note how macro3 calls macros #1 and #2 for execution. MAC BEG macro1 MVR 1 12.5 WAC ONT? 1 = 1 MAC END MAC BEG macro2 MVR 1 -12.5 WAC ONT? 1 = 1 MAC END MAC BEG macro3 MAC START macro1 MAC START macro2 MAC END During macro recording for a controller whose address is different from 1, the address must as target ID be part of each command line to be recorded, but will not become part of the macro content. Example 2 (for a system with position sensor): The controller address is set to 2 with the DIP switches. Macro addrtest is to be recorded: 2 MAC BEG addrtest 2 SVO 1 1 2 DEL 1000 2 FRF 1 2 MAC END Now you can check the content of macro addrtest by sending 2 MAC? addrtest The answer is SVO 1 1 DEL 1000 FRF 1 i.e. the target ID has not become part of the macro. www.pi.ws E-861 PZ205E Release 1.2.1 Page 83 Working with Controller Macros See "Target and Sender Address" (p. 110) for more information. 7.2 Starting Macro Execution A defined macro can be run by the command MAC START where is the name that was given to the macro to be run. To run a macro multiple times, call it with MAC NSTART n where n gives the number of times the macro is to be run. Simultaneous execution of multiple macros is not possible. Only one macro can be executed at a time. Any commands can be sent from the command line when a macro is running. The macro content and move commands received from the command line may overwrite each other, and only the last move command will be executed, irrespective of its source. Macro execution can be stopped from the command line with #24 (p. 117), STP (p. 182) and HLT (p. 137). A running macro may not be deleted. Macro execution is not allowed when a joystick is active on the axis. See "Joystick Control" (p. 79) for details. You can query with #8 (p. 116) if a macro is currently running on the controller and ask for the names of currently running macros with the RMC? command (p. 168). 7.3 Start-Up Macro With MAC DEF it is possible to set the specified macro as start-up macro. This macro will be automatically executed with the next power-on or reboot of the controller. Example (for a system with position sensor): MAC BEG startcl JON 1 0 SVO 1 1 DEL 1000 FNL 1 MAC END MAC DEF startcl In the example, axis 1 will after power-on be immediately ready for closedloop operation since the startup macro switches the servo on and performs www.pi.ws E-861 PZ205E Release 1.2.1 Page 84 Working with Controller Macros a reference move to the negative limit switch. To ask for the current start-up macro setting, send MAC DEF? To undo the current start-up macro selection, send MAC DEF i.e. omit . Deleting a macro with MAC DEL does not delete the startup macro selection. 7.4 Preparing for Stand-Alone Preparation If you want to operate controller and a stage without a host PC you can do so by using macros. Stand-alone operation is possible if you store macros as auto-start macros, i.e. the content of the macro is performed automatically after the controller is powered on. For example, you can program a macro for motion within a fixed travel range or a macro to enable a joystick or a pushbutton box directly after booting the controller. Thus you can command motion flexible. Before you start stand-alone operation you must make sure that the parameter settings stored in the controller’s non-volatile memory are appropriate for the stage connected: For example, the controller must recognize the reference switch (i.e. 0x14 must be 1) to be capable to perform referencing in an autostart macro. This is not possible with Default-Stage-N parameter settings in the controller’s non-volatile memory. See “Storing Parameter Settings to Non-Volatile Memory Using PIMikroMove Main Window” (p. 38) or “Storing Parameters to Volatile and Non-Volatile Memory via Commands” (p. 40), for instructions. ! www.pi.ws CAUTION Do not enable a joystick via command when no joystick device is connected to the controller hardware. Otherwise the corresponding controller axis may start moving and could damage your application setup. E-861 PZ205E Release 1.2.1 Page 85 Working with Controller Macros An example follows of how to generate a start-up macro that: ■ Switches servo on ■ References the stage ■ Activates joystick operation To generate the auto start macro as described proceed as follows: 1 Select the Controller macros tab of the PIMikroMove main window, see next figure. 2 Insert a macro with the following commands: SVO 1 1 DEL 500 FRF 1 WAC FRF? 1 = 1 JAX 1 1 1 JON 1 1 3 www.pi.ws Send macro to controller, see next figure. E-861 PZ205E Release 1.2.1 Page 86 Working with Controller Macros 4 www.pi.ws Select macro for autostart, see figure above. This macro will be executed automatically every time the controller is powered on or rebooted. E-861 PZ205E Release 1.2.1 Page 87 Data Recording 8 Data Recording For general information regarding the data recording you can send the HDR? command (p. 135) which lists available record options and trigger options and gives additional information about data recording. The E-861 has 2 data recorder tables (ask with TNR? (p. 187)) with 1024 data points per table. The data recorder configuration, i.e. the assignment of data sources and record options to the recorder tables, can be changed with DRC (p. 122), and the current configuration can be read with DRC? (p. 123). Data recorder tables with record option 0 are deactivated, i.e. nothing is recorded (power-on default). Recording can be triggered in several ways. Ask with DRT? (p. 127) for the current trigger option and use DRT (p. 126) to change it. A trigger option set with DRT will become valid for all data recorder tables with non-zero record option. By default data recording is triggered when a step response measurement is made with STE (p. 181). The record table rate can be set with the RTR command (p. 171). The power-on default of this value is one servo cycle (ask with RTR? (p. 172)). You can cover longer periods by increasing the record table rate. Recording always takes place for all data recorder tables with non-zero record options. Recording ends when the content of the data recorder tables has reached the maximum number of points. The last recorded data can be read with the DRR? command (p. 124). The data are reported in GCS array format, for details regarding the GCS array see the separate manual (SM146E) which is provided on the E-861 CD. Reading can take long depending on the number of points to be read! It is possible to read the data while recording is still in progress. When the controller is powered down, the content of the data recorder tables and all data recorder configuration and trigger settings are lost. The configuration and trigger settings are reset to their factory defaults on power on. www.pi.ws E-861 PZ205E Release 1.2.1 Page 88 Customizing the System 9 Customizing the System This section contains information about: ■ Which parameters you may have to change to adjust the controller to your individual application or to use a custom stage ■ Which parameters you may adjust regarding travel range ■ How to tune PID control parameters ■ How you can generate a user-defined stage database entry In addition, you find the following information for adjustment of the E-861 controller for a custom sensor: ■ When to adjust servo loop input factor parameters ■ How to adjust controller for a custom sensor that uses a custom interpolation board ■ What sensor properties are required for using the controller's GEMAC interpolation board ■ What to provide if a custom sensor is to use the controller’s GEMAC interpolation board Adjustment and storing of adjusted parameter settings can be required in the following cases: If your application requires adjustment regarding: ■ Travel range and/or a modified home position ■ Physical units and axis unit If you use a custom stage you have to provide for the following: ■ www.pi.ws The logic of your reference and limit switches must be reflected in the controller’s parameter settings E-861 PZ205E Release 1.2.1 Page 89 Customizing the System ■ The parameters of your stage’s sensor must match the GEMAC interpolation board’s requirements. This interpolation board is part of the E-861 controller ■ The resolution of your stage’s sensor must be reflected by the servoloop input factor For instructions on how to store adjusted parameter settings to volatile and non-volatile memory read “How to Store Parameter Settings” (p. 37). For instructions on how to generate a custom stage database entry see "How to Create a New Stage Type in the PI Stages Database" (p. 98). See “Adjustment for Custom Sensor” (p. 99) for what to consider for operating the E-861 controller with a stage with custom sensor. 9.1 Parameters for Customizing The properties of your mechanics (stage configuration, sensor, load) must be reflected in the corresponding parameters of the E-861 firmware. The following parameters may have to be adjusted depending on your application: ■ Parameters which affect the travel range. These parameters are: Parameter ID Function 0x15 Maximum travel in positive direction 0x16 Position value at reference position 0x17 Distance between reference switch and negative limit switch 0x2F Distance between reference switch and positive limit switch 0x30 Maximum travel in negative direction See "Travel Range Adjustment" (p. 92) for details. www.pi.ws ■ The numerator and denominator of the counts-per-physical-unit factor (parameter IDs 0xE and 0xF) which determines the "user" unit for motion commands and the settings of all other parameters whose unit is based on the "user" unit ■ Parameter for Axis unit (ID 0x7000601), since it is not adjusted automatically by the counts-per-physical-unit factor ■ Further parameters if this is necessary for your application ■ PID control parameters should be adjusted during closed-loop operation of the system until the system performance proves satisfactory, e.g. by measuring the step response of the system (STE E-861 PZ205E Release 1.2.1 Page 90 Customizing the System command and DRR? command (p. 124)). The P, I and D values depend on the applied load and motion parameters (velocity, settling behavior). See also "Tuning PID Control Parameters" (p. 95) for how PID control parameters can be adjusted. The following parameters may have to be adjusted if you use a custom stage: ■ Parameters for the limit and reference switches and their signal logic to make them fit to your hardware. These parameters are: Parameter ID 0x14 0x31 0x32 Function Stage has a reference switch 1 if yes, 0 if no Invert the reference 1 if invert, 0 if no inversion Stage has limit switches 0 if yes, 1 if no ■ The E-861 is equipped with a GEMAC interpolation board for incremental measuring systems. Check if your sensor hardware (encoder) is compatible with the preset values of the parameters for the GEMAC interpolation board (IDs 0x7000010 to 0x700001F). See "GEMAC Parameters" (p. 105) for details. ■ Parameters for numerator and denominator of the servo loop input factor (IDs 0x5A and 0x5B) are preset to 50000 counts per 1 mm. Needs to be adjusted only if your sensor resolution differs from 50000 counts per 1 mm. See “Servo Loop Input Factor” (p. 99) for more information of this factor’s function. If you want to operate the controller with a custom stage not delivered from PI and if you use PI software, as e.g. PIMikroMove, you can use the Default-Stage-N's stage database entry, i.e. a given set of parameter settings. Ensure that the parameter settings of Default Stage N correspond to your mechanics – make adjustments if necessary. See “Controller Parameters” (p. 35) for how to handle parameter settings and how to store them. www.pi.ws E-861 PZ205E Release 1.2.1 Page 91 Customizing the System 9.2 Travel Range Adjustment The figures below give a universal hardware scheme of a positioning stage with incremental sensor, reference and limit switches. To work with such a stage in closed-loop operation, the corresponding controller parameters must be adjusted properly (see "Controller Parameters" (p. 35) for how to modify parameter values). In the example shown in the first figure, the travel range, i.e. the distance from negative to positive limit switch is 20 mm, the distance between the negative limit switch and the reference switch is 8 mm, and the distance between reference switch and positive limit switch is 12 mm (you can use the FED command (p. 128) in combination with the POS? command (p. 167) to identify the values). These hardware properties are represented by the following controller parameters in the E-861 firmware: DISTANCE_REF_TO_N_LIM (parameter ID 0x17) = 8 DISTANCE_REF_TO_P_LIM (parameter ID 0x2F) = 12 To allow for flexible localization of the home position (0), a special parameter is provided. It gives the offset between reference switch and home position which is to be valid for the stage after a reference move (see below). In the example, the home position is to be located at the negative limit switch after a reference move, and hence the offset between reference switch and home position is 8 mm. VALUE_AT_REF_POS (parameter ID 0x16) = 8 To allow for absolute moves, either an absolute "initial" position can be set with the POS command (p. 166), or the stage can perform a reference move to a known position where a defined position value will be set as the current position (see "Referencing" (p. 51) for further details). By default, a reference move is required. In the example, known positions for reference moves are given by the reference switch and the limit switches. Depending on the switch used for the reference move, a certain combination of the above-mentioned parameters is used to calculate the position to be set at the end of the move: www.pi.ws ■ Reference switch (FRF command (p. 133)): the stage is moved to the reference switch, and the value of VALUE_AT_REF_POS is set as the current position. ■ Negative limit switch (FNL command (p. 129)): the stage is moved to the negative limit switch and the difference of VALUE_AT_REF_POS and DISTANCE_REF_TO_N_LIM is set as the current position (can be negative). E-861 PZ205E Release 1.2.1 Page 92 Customizing the System ■ Positive limit switch (FPL command (p. 131)): the stage is moved to the positive limit switch and the sum of VALUE_AT_REF_POS and DISTANCE_REF_TO_P_LIM is set as the current position. It is furthermore possible to set "soft limits" which establish a "safety distance" which the stage will not enter on both ends of the travel range. In the E-861 firmware, those soft limits always refer to the current home position (0; in the example located at the negative limit switch after a reference move). The soft limits are to be deactivated in the example so that the corresponding parameters must be as follows: MAX_TRAVEL_RANGE_POS (parameter ID 0x15) = 20 mm MAX_TRAVEL_RANGE_NEG (parameter ID 0x30) = 0 mm (This means that the stage can move 20 mm in positive direction, starting from the home position, and 0 mm in negative direction, starting from the home position.) Figure 18: Positioning stage and corresponding controller parameters www.pi.ws E-861 PZ205E Release 1.2.1 Page 93 Customizing the System Now in the same example, a "safety distance" is to be established on both ends of the travel range by setting soft limits, and the home position is to be located at about 1/3 of the distance between the new negative end of the travel range and the reference switch. The limit switches cannot be used for reference moves anymore. Figure 19: Positioning stage, soft limits set in the controller to reduce the travel range After the stage was referenced again by moving it to the reference switch (FRF command), the following responses will be given: TMN? (p. 186) returns -2.1 TMX? (p. 187) returns 16.4 POS? (p. 167) returns 5.4 CAUTION If the soft limits (MAX_TRAVEL_RANGE_POS and MAX_TRAVEL_RANGE_NEG) are used to reduce the travel range, the limit switches cannot be used for reference moves. The FNL and FPL commands will provoke an error message, and only the reference switch can be used for a reference move (FRF). Be careful when setting the values for VALUE_AT_REF_POS, MAX_TRAVEL_RANGE_POS and MAX_TRAVEL_RANGE_NEG because there is no plausibility check. www.pi.ws E-861 PZ205E Release 1.2.1 Page 94 ! Customizing the System The soft limits may not be outside of the physical travel range: MAX_TRAVEL_RANGE_POS ≤ DISTANCE_REF_TO_P_LIM + VALUE_AT_REF_POS MAX_TRAVEL_RANGE_NEG ≥ VALUE_AT_REF_POS DISTANCE_REF_TO_N_LIM Otherwise, reference moves to the limit switches would have incorrect results because the values of the soft limits would be set at the end of the referencing procedure. Be careful when referencing the stage by setting an initial absolute position with POS since the values for MAX_TRAVEL_RANGE_POS and MAX_TRAVEL_RANGE_NEG are not adapted. In the worst case, the soft limits will now be outside of the physical travel range, and the stage will no longer be able to move since the closed-loop move commands check the soft limit settings. 9.3 Tuning PID Control Parameters If PID tuning is required it is recommended to use the controller's data recorder and PIMikroMove. PIMikroMove main window must be open. To adjust PID control parameters proceed as follows: www.pi.ws 1 Open the expanded single axis window by following the View → Single Axis Window menu sequence for the connected stage. 2 Click on the + at the right side of the single axis window, see figure below. E-861 PZ205E Release 1.2.1 Page 95 Customizing the System 3 In the list at the right side of the expanded single axis window you can check the current settings and you may insert new settings. If a parameter you wish to adjust does not occur in the list click on Select parameters to display the parameter in the list. Note that a new parameter setting is only sent to the controller after is pressed while the cursor is in the text entry. 4 To display a step response open the controller's data recorder. To do so follow the E-861 → Show/Hide data recorder menu sequence, see figure below. The Data Recorder window opens as shown in the next figure: www.pi.ws E-861 PZ205E Release 1.2.1 Page 96 Customizing the System 5 Configure the data recorder. For detailed information read the following sections in the SM148E PIMikroMove Manual: "Data Recorder" "Configure Data Recorder" "Perform Step or Impulse Measurements" Make sure that data recorder settings are adjusted such as, for example, step size to be recorded, record rate and number of data points on the Data Recorder screen. www.pi.ws 6 Press the step response button (positive slope) to start and record a step response. See figure below for an example: 7 If the step response does not prove satisfactory, adjust the PID settings in the expanded Single axis window. 8 Press enter for each adjusted parameter setting in the expanded Single axis window separately. 9 Start and record another step response on the Data Recorder screen. If the result is not satisfactory repeat steps 7 to 9 with different PID settings. E-861 PZ205E Release 1.2.1 Page 97 Customizing the System 10 If you wish to read the position data of a step response in PIMikroMove’s Command entry window send a DRR? command to read the data from the controller’s data recorder. 9.4 How to Create a New Stage Type in the PI Stages Database The easiest way to add a new stage type to the UserStages2 database is to modify the parameters of an existing stage type and save them under a new name. Thereafter you can select this newly defined stage in PIMikroMove or in other PI software as well. Proceed as follows: www.pi.ws 1 Assign the stage type that comes closest to your stage to the appropriate axis. See Select connected stages step, i.e. step 9, of the "Getting Started" (p. 12) section for how to do this. Afterwards the Start Up Axes dialog may open—you can close this dialog because at this point it is not necessary to reference the axis. 2 On the Axes tab card, display the columns for the parameters you want to modify. Press the Select columns to be displayed icon in the right top corner of the PIMikroMove main window, see next figure. 3 Change the values of the parameters you want to modify by typing them into the appropriate fields of the Axes tab card. Note that only fields with white backgrounds can be edited. E-861 PZ205E Release 1.2.1 Page 98 Customizing the System 4 Save the modified settings as a new stage using the Add/Edit User Stage type... item from the corresponding controller menu. You simply have to define a new name for your stage and click OK. 5 The new stage is now displayed on the Axes tab card, and you can work with it (e.g. reference the stage: right-click on the axis row and select the Start up axes... item in the controller menu of the corresponding controller. If you want to further modify the stage parameters, use the Add/Edit User Stage Type menu item again to save the changes. 9.5 Adjustment for Custom Sensor E-861 controllers feature sensor boards with interpolation circuitry, that are adjusted to encoders of PI’s NEXACT® drives. If you use a custom stage with a custom sensor it is recommended to use also custom interpolation hardware suitable for that sensor. See “Adjustment for Custom Sensor Using Custom Interpolation Board” (p. 100) for how to proceed for adjusting the controller hardware. It is also possible to adjust the controller to a custom sensor using the GEMAC interpolation board. See “GEMAC Parameters” (p. 105) for details about the GEMAC parameters. See "Adjustment for Custom Sensor Using GEMAC Interpolation Board" (p. 106) for what you need to provide and what requirements must be fulfilled. Details and instructions for the adjustment procedure are given in the E861T0008 Technical Note. Call your PI representative or write to info@pi.ws to ask for this Technical Note if required. Irrespective of whether you use a sensor with its own interpolation circuitry or a sensor using the GEMAC interpolation board you have to make sure that the servo loop input factor matches the custom sensor’s resolution. See “Servo Loop Input Factor” below to find out if you have to adjust the corresponding parameters. 9.5.1 Servo Loop Input Factor Parameters 0x5A and 0x5B represent numerator and denominator of the servo loop input factor. This factor decouples servo loop parameters from the encoder resolution. This factor has to be adjusted only if a custom sensor with a resolution other than 50000 counts per 1 mm is to be used. www.pi.ws E-861 PZ205E Release 1.2.1 Page 99 Customizing the System 0x5A and 0x5B have to be set carefully to guarantee a stable control loop. See “How to Store Parameter Settings” (p. 37) for further details. Note that the servo loop input factor formed by 0x5A and 0x5B is independent from 0xE and 0xF, i.e. the counts-per-physical-unit factor. The counts-per-physical-unit factor has no influence on control loop stability, but is used for input and output scaling of position values. 9.5.2 Adjustment for Custom Sensor Using Custom Interpolation Board If you wish to use a drive with a custom specific sensor that features its own interpolation circuitry, you have to remove the GEMAC interpolation board and adjust the controller to process digital sensor, i.e. encoder, inputs. To adjust the controller for a sensor with its own interpolation circuitry you have to provide the following items: ■ A Phillips head screwdriver to remove/fix top plate from/to controller ■ Sensor with interpolation circuitry that provides a sensor reference signal with TTL level and a minimum pulse length of more than 50 µs ■ Documentation of the sensor manufacturer for sensor calibration In addition, you have to make sure that the servo loop input factor matches the custom sensor’s resolution. See “Servo Loop Input Factor” (p. 99) for details about this factor. See “How to Store Parameter Settings” (p. 37) for details on how to store parameter settings to volatile and non-volatile memory of the controller. DANGER Procedures which require opening the case should be carried out by authorized, qualified personnel only. Disconnect the controller from power when opening the case, and when resetting internal switches or jumpers. When the controller must be operated with the case open, voltages of up to 48 VDC and currents of up to 2 A can be exposed. Do not touch internal conductors. CAUTION The boards inside the E-861 are ESD-sensitive (electrostatic discharge sensitive) devices. Observe all precautions against static charge www.pi.ws E-861 PZ205E Release 1.2.1 Page 100 ! Customizing the System buildup before handling these devices. Avoid touching circuit components, pins and PCB traces. Discharge any static electricity you may have on your body by briefly touching a conductive, grounded object before you touch any electronic assembly. Make sure that no conductive particles of any kind (metallic dust or shavings, broken pencil leads, loose screws) contact the device circuitry. To adjust the E-861 controller for sensor signals from a custom sensor which uses its own interpolation board proceed as follows: www.pi.ws 1 Disconnect the E-861 from the power supply to power it down. 2 Unscrew the 2x2 cross-head screws at the front and the rear of the controller. 3 Unscrew the 2 cross-head screws at the left side of the controller. 4 Remove top plate from the controller. Now you have access to the GEMAC interpolation board, see next figure. 5 Remove interpolation board. Below the interpolation board a DIP switch is located. 6 To use digital encoder input set all DIP switches to ON, see next figure. Now the pinout of column “Without interpolation board” in the sensor pinout table below is valid. E-861 PZ205E Release 1.2.1 Page 101 Customizing the System 7 Attach top plate to controller by tightening the 2x2 cross-head screws to controller rear and front plates. 8 Connect sensor to sub-D sensor connector at rear of controller. 9 Reconnect the power supply to the E-861 to power it on. 10 Give an appropriate sensor reference signal to pin 1 of the sensor connector at the controller rear. The reference signal is appropriate if it features: TTL level a minimum pulse length of more than 50 µs, since 50 µs is the controller servo loop time 11 Perform a sensor calibration as described in the sensor manufacturer’s documentation. Note that the reference pulse of the ruler, i.e. input signals to pin 3 and pin 8, cannot be used. 12 Check for proper function of the servo loop with the new sensor. To do so proceed as follows: a) Open a connection using PIMikroMove, see steps 1 to 10 of “Getting Started” (p. 12) for instructions. b) To send the commands as given below follow the Tools → Command entry menu sequence in the PIMikroMove main window, see figure below. Now you can send commands via the Command entry window. www.pi.ws E-861 PZ205E Release 1.2.1 Page 102 Customizing the System c) Activate servo by sending SVO 1 1 d) Send MOV 1 10 e) Send POS? f) Compare response with commanded target position. If both values are consistent proceed with step 13. If they are not, repeat step 11. 13 If you are sure that the motion system works properly, shut down controller. www.pi.ws E-861 PZ205E Release 1.2.1 Page 103 Customizing the System Pinout of Sensor Connector (15-pin sub-D connector) Pin With interpolation board Without interpolation board 1 REF REF 2 VDD (5 V output) VDD (5 V output) 3 REFP cannot be used (Positive reference trace from ruler) 4 COSP B+ 5 SINP A+ 6 PLIMIT PLIMIT 7 NLIMIT NLIMIT 8 Ref (negative reference trace from ruler) cannot be used 9 COSN B- 10 SINN A- 11 internal use internal use 12 VDD (5 V output) VDD (5 V output) 13 GND GND 14 GND GND 15 GND GND www.pi.ws E-861 PZ205E Release 1.2.1 Page 104 Customizing the System 9.5.3 GEMAC Parameters The E-861 is equipped with a GEMAC interpolation board for incremental measuring systems. The GEMAC parameters are set in the volatile or non-volatile memory of the controller, see "How to Store Parameter Settings" (p. 37) for instructions.Note that the parameters for the GEMAC board (IDs 0x7000010 to 0x700001) are not part of a parameter set, i.e. stage database entry located on the host PC. The parameters for the GEMAC board are preset for the following encoder hardware properties: ■ Differential analog transmission of the sensor signals. Note that the controller cannot process single-ended signals, even though the GEMAC board would allow it ■ Sine and cosine signals have to be phase shifted by 90° relative to one another (obligatory) ■ Sensor signal amplitude, i.e. of ± sin and ± cos: 1.0 Vpp (obligatory) ■ Offset for sensor signal, i.e. ± sin and ± cos: 2.5 V (obligatory) It is strongly recommended to use these parameter values, i.e. your sensor hardware properties must match the above-mentioned values, otherwise the GEMAC interpolation board may not work properly. See the manual for the GEMAC interpolation board (IP1000_B_EN.pdf; provided on the E-861 CD) for information about interpolation details. If you are sure that you wish to adjust GEMAC parameters proceed as follows: 1 Set the GEMAC parameters in volatile memory using SPA. See "Parameter List" (p. 41) for assignment of E-861 parameters to the write registers of the GEMAC circuitry. The following example shows how to configure the GEMAC CFGO write register (e.g. interval time, interpolation rate) for axis 1: Send SPA 1 0x7000010 252 See p. 16 of IP1000_EN.pdf for bit mapping of CFG0 write register. The setting is made in volatile memory only. www.pi.ws 2 Test the functioning of the system. 3 If everything is okay and you want to use this system configuration after the next power-on, save the settings for the GEMAC E-861 PZ205E Release 1.2.1 Page 105 Customizing the System parameters from volatile to non-volatile memory. For example: Send WPA 4711 The password "4711" affects only the GEMAC parameters (for all other parameters, the passwort "100" is required). Since WPA is used without specifying any parameters, all currently valid GEMAC parameter values from volatile memory are saved, except for the write-protected parameters (see Note below). NOTE The GEMAC parameters cannot be changed with SEP. Use SPA and WPA to save their values to non-volatile memory. The GEMAC parameters with the IDs 0x7000015, 0x7000016, 0x700001C, 0x700001D, 0x7000001E and 0x700001F are writeprotected and cannot be changed. The E-861 will send no error message if you try to change those parameters. 9.5.4 Custom Sensor Using GEMAC Interpolation Board If a custom sensor is to use the GEMAC interpolation board you have to provide the following items: ■ Sensor delivering signals that match the requirements of the GEMAC interpolation board See “GEMAC Parameters” (p. 105) for required sensor properties. ■ Documentation of the sensor manufacturer for sensor calibration ■ IP1000_B_EN.pdf, i.e. documentation of GEMAC interpolation board In addition, the following condition has to be met: ■ The servo loop input factor matches the custom sensor’s resolution. See “Servo Loop Input Factor” (p. 99) for details about this factor. See “How to Store Parameter Settings” (p. 37) for instructions. Details and preparation instructions for custom sensor calibration using the controller's interpolation board are given in the E861T0008 Technical Note. Call your PI representative or write to info@pi.ws to ask for this Technical Note if required. www.pi.ws E-861 PZ205E Release 1.2.1 Page 106 GCS Commands 10 GCS Commands The PI General Command Set (GCS) is supported by a wide range of PI systems. This command set is well-suited for positioning tasks with one or more axes. The command set itself is independent of the specific hardware (controller or attached stages). Commands are used to set operating modes, initiate axis motion and to query system and motion values. Because of the variety of functions and parameters, a sequence of commands must often be transferred in order to achieve a desired system action. You can type commands, for example, in the Command Terminal or Command Entry windows, respectively, of NanoCapture and PIMikroMove, or in the PITerminal. 10.1 Format 10.1.1 Notation The following notation is used to define the GCS syntax and to describe the commands: <...> Angle brackets indicate an argument of a command, can be an item identifier (p. 53) or a command-specific parameter […] Square brackets indicate an optional entry {…} Braces indicate a repetition of entries, i.e. that it is possible to access more than one item (e.g. several axes) in one command line. LF LineFeed (ASCII char #10), is the default termination character Space (ASCII char #32) SP 10.1.2 GCS Syntax Except as listed below, a GCS command consists of 3 characters, e.g. CMD. The corresponding query command has a "?" appended, e.g. CMD?. Command mnemonic: CMD ::= character1 character2 character3 [?] www.pi.ws E-861 PZ205E Release 1.2.1 Page 107 GCS Commands Exceptions: ■ Special commands, e.g. fast polling commands, consist only of one character. The 24th ASCII character e.g. is called #24. Note that these commands are not followed by a termination character (but the responses to them are). ■ *IDN? (for GPIB compatibility). The command mnemonic is not case-sensitive. General: CMD[{{SP} }]LF That means the command mnemonic and all arguments (e.g. axis IDs, channel IDs, parameters, etc.) must be separated from each other by one space. Example: Send: MOVSP1SP10.0LF to move Axis 1 to position 10.0 (the unit depends on the controller, can be µm or mm, for example) More than one command mnemonic per line is not allowed. Several groups of arguments following a command mnemonic are allowed, e.g. MOVSP1SP17.3SP2SP2.05LF if there were 2 axes. The command line ends with the termination character (LF). If part of a command line cannot be executed, the line is not executed at all. When all arguments are optional and are omitted, the command is executed for all possible argument values. For example, RPALF resets all parameters in volatile memory. The argument is used for the logical axes of the controller. Depending on the controller, an axis could be identified with up to 16 characters—all alphanumeric characters and the underscore are allowed. See "Accessible Items and Their Identifiers" (p. 53) for the identifiers supported by the E-861. Definitions for query commands (report commands): CMD?[{{SP} }]LF When all arguments are optional and are omitted, all possible values are reported. For example, POS? www.pi.ws E-861 PZ205E Release 1.2.1 Page 108 GCS Commands queries the position of all axes. Reply syntax: [ [{SP }]"="] LF Multi-line reply syntax: {[ [{SP }]"="] SP LF} [ [{SP }]"="] LF for the last line! The command CMD?SP SP SP LF replies in the same order: "=" SP LF "=" SP LF "=" LF Example: Send: Report: TSP?SP2SP1 2=-1158.4405SP LF 1=+0000.0000LF NOTE With the E-861, you can address only one single item (e.g. axis or channel) per command line, or, if the command supports this, address all items by omitting the item identifier. Example: You can send SEP 100 1 0x32 0 to save a new value of parameter 0x32 for axis 1 to non-volatile memory but it is not possible to send SEP 100 1 0x32 0 1 0x14 1 www.pi.ws E-861 PZ205E Release 1.2.1 Page 109 GCS Commands 10.1.3 Target and Sender Address In principle, the addresses of the target controller and the sender are required in every command line, even with single-character commands like #4 or when recording a macro. But because only the host PC may send command lines to the E-861s, its address (0) can be omitted. Both target and sender address, however, are part of any controller response. Example: In a terminal, e.g. PITerminal, you can ask with the *IDN? command for the identification string of the E-861 with address 2 either by sending 2 0 *idn? or by sending 2 *idn? The response in either case is 0 2 (c)2010 Physik Instrumente(PI) Karlsruhe,E-861 Version 7.2.0 Exception: The target address can be omitted if the target E-861 has the address 1, even if this E-861 is part of a daisy chain. If the target address is omitted, the target and sender addresses will also be omitted in any response of the controller. Example: If you send *idn? the controller with the address 1 will respond with (c)2010 Physik Instrumente(PI) Karlsruhe,E-861 Version 7.2.0 If you send 1 *idn? it will respond with 0 1 (c)2010 Physik Instrumente(PI) Karlsruhe,E-861 Version 7.2.0 See "DIP Switch Settings" for how to set the controller address. Possible controller addresses are in the range of 1 to 16, address 1 is default. The host PC always has the address 0. With the broadcast address 255, all controllers in a daisy chain can be addressed at the same time, but no reports are displayed on the host PC. NOTES In a daisy-chain, connected via USB or via RS-232, there must be one controller with address 1. It is not required that this controller is directly connected to the host PC, i.e. this controller does not have to be the first controller of the daisy-chain. If there is no controller in a daisy-chain with address 1 an error message occurs when you try to setup a connection. www.pi.ws E-861 PZ205E Release 1.2.1 Page 110 GCS Commands 10.2 Command Survey www.pi.ws #4 (p. 114) Request Status Register #5 (p. 115) Request Motion Status #7 (p. 116) Request Controller Ready Status #8 (p. 116) Query If Macro Is Running #24 (p. 117) Stop All Motion *IDN? (p. 117) Get Device Identification ACC (p. 118) Set Acceleration ACC? (p. 118) Get Acceleration CST? (p. 119) Get Stage Type Of Selected Axis CSV? (p. 119) Get Current Syntax Version DEC (p. 119) Set Deceleration DEC? (p. 120) Get Deceleration DEL (p. 120) Delay The Command Interpreter DIO (p. 121) Set Digital Output Lines DIO? (p. 121) Get Digital Input Lines DRC (p. 122) Set Data Recorder Configuration DRC? (p. 123) Get Data Recorder Configuration DRR? (p. 124) Get Recorded Data Values DRT (p. 126) Set Data Recorder Trigger Source DRT? (p. 127) Get Data Recorder Trigger Source ERR? (p. 127) Get Error Number FED (p. 128) Find Edge FNL (p. 129) Fast Move To Negative Limit E-861 PZ205E Release 1.2.1 Page 111 GCS Commands www.pi.ws FPL (p. 131) Fast Move To Positive Limit FRF (p. 133) Fast Move To Reference Switch FRF? (p. 134) Get Referencing Result GOH (p. 135) Go To Home Position HDR? (p. 135) Get All Data Recorder Options HLP? (p. 136) Get List of Available Commands HLT (p. 137) Halt Motion Smoothly HPA? (p. 138) Get List of Available Parameters JAS? (p. 138) Query Joystick Axis Status JAX (p. 139) Set Axis Controlled By Joystick JAX? (p. 140) Get Axis Controlled By Joystick JBS? (p. 140) Query Joystick Button Status JDT (p. 141) Set Joystick Default Lookup Table JLT (p. 142) Fill Joystick Lookup Table JLT? (p. 143) Get Joystick Lookup Table Values JON (p. 145) Set Joystick Activation Status JON? (p. 145) Get Joystick Activation Status LIM? (p. 146) Indicate Limit Switches MAC (p. 146) Call Macro Function MAC? (p. 149) List Macros MEX (p. 149) Stop Macro Execution Due To Condition MOV (p. 151) Set Target Position MOV? (p. 152) Get Target Position MVR (p. 153) Set Target Relative To Current Position OAC (p. 154) Set Open-Loop Acceleration E-861 PZ205E Release 1.2.1 Page 112 GCS Commands www.pi.ws OAC? (p. 155) Get Open-Loop Acceleration OAD (p. 155) Open-Loop Analog Driving OAD? (p. 157) Get Voltage For Open-Loop Analog Motion ODC (p. 157) Set Open-Loop Deceleration ODC? (p. 158) Get Open-Loop Deceleration OMA (p. 158) Absolute Open-Loop Motion OMA? (p. 160) Get Open-Loop Target Position OMR (p. 161) Relative Open-Loop Motion ONT? (p. 163) Get On Target State OSM (p. 163) Open-Loop Step Moving OVL (p. 165) Set Open-Loop Velocity OVL? (p. 166) Get Open-Loop Velocity POS (p. 166) Set Real Position POS? (p. 167) Get Real Position RBT (p. 167) Reboot System RMC? (p. 168) List Running Macros RNP (p. 168) Relax PiezoWalk Piezos RON (p. 170) Set Reference Mode RON? (p. 170) Get Reference Mode RPA (p. 171) Reset Volatile Memory Parameters RTR (p. 171) Set Record Table Rate RTR? (p. 172) Get Record Table Rate SAI? (p. 172) Get List Of Current Axis Identifiers SEP (p. 173) Set Nonvolatile Memory Parameters SEP? (p. 174) Get Nonvolatile Memory Parameters E-861 PZ205E Release 1.2.1 Page 113 GCS Commands SPA (p. 175) Set Volatile Memory Parameters SPA? (p. 178) Get Volatile Memory Parameters SRG? (p. 178) Query Status Register Value SSA (p. 180) Set Step Amplitude SSA? (p. 180) Get Step Amplitude STE (p. 181) Start Step And Response - Measurement STP (p. 182) Stop All Motion SVO (p. 183) Set Servo State (Open-Loop / Closed-Loop Operation) SVO? (p. 185) Get Servo State (Open-Loop / Closed-Loop Operation) TAC? (p. 185) Tell Analog Channels TAV? (p. 185) Get Analog Input Voltage TIO? (p. 186) Tell Digital I/O Lines TMN? (p. 186) Get Minimum Commandable Position TMX? (p. 187) Get Maximum Commandable Position TNR? (p. 187) Get Number Of Record Tables TRS? (p. 188) Indicate Reference Switch VEL (p. 188) Set Closed-Loop Velocity VEL? (p. 189) Get Closed-Loop Velocity WAC (p. 189) Wait For Condition For Macro Execution WPA (p. 190) Save Parameters To Nonvolatile Memory 10.3 Command Reference (alphabetical) #4 (Request Status Register) Description: Requests system status information. www.pi.ws Format: #4 Arguments: none (single ASCII character number 4) E-861 PZ205E Release 1.2.1 Page 114 GCS Commands Response: Notes: The answer is bit-mapped. See below for the individual codes. This command is identical in function to SRG? (p. 178), but only one character must be send via the interface. Therefore #4 can also be used while the controller is performing time-consuming tasks. Note that this command might deliver no response as long as the controller performs a motion with the PiezoWalk Driving mode parameter 0x7001A00 set to 1, i.e. if automatic alternating of motion modes is activated and being performed. For the E-861, the response is the sum of the following codes, in hexadecimal format: Bit 15 14 13 Descrip- On Is Is tion Target referen- moving cing Bit 7 Descrip- Digital tion Input 4 Example: 6 Digital Input 3 12 Servo On 5 Digital Input 2 11 10 9 8 Transitions between motion and servo modes: Analog = 0 Relaxing = 1 Go to analog = 2 Relaxed = 3 In motion = 4 Go to motion = 5 See "Modes of Operation" (p. 54) for details. 4 Digital Input 1 3 - 2 1 Positive RefeLimit rence 0 Negative Limit Send: #4 Receive: 0x9405 Note: The response is given in hexadecimal format. It means that the axis is on target, the servo is on, the axis is ready for closed-loop motion (In motion state), the states of the digital input lines 1 to 4 are low, and the stage is on the positive side of the reference switch (limits are not active, note that the logic of the signals is inverted in this example) #5 (Request Motion Status) Description: Requests motion status of the axes. www.pi.ws Format: #5 (single ASCII character number 5) Arguments: none E-861 PZ205E Release 1.2.1 Page 115 GCS Commands Response: Examples: The answer is bit-mapped and returned as the hexadecimal sum of the following codes: 1=first axis is moving 2=second axis is moving 4=third axis is moving ... 0 indicates motion of all axes complete 3 indicates that the first and the second axis are moving #7 (Request Controller Ready Status) Description: Asks controller for ready status (tests if controller is ready to perform a new command). Format: Note: Use #5 (p. 115) instead of #7 to verify if motion has finished. #7 (single ASCII character number 7) Arguments: none Response: B1h (ASCII character 177 = "±" in Windows) if controller is ready B0h (ASCII character 176 = "°" in Windows) if controller is not ready (e.g. performing a referencing command) Troubleshooting: The response characters may appear differently in non-Western character sets or other operating systems. They may be indistinguishable on the controller screen. #8 (Query If Macro Is Running) Description: Tests if a macro is running on the controller. www.pi.ws Format: #8 (single ASCII character number 8) Arguments: none Response: =0 no macro is running =1 a macro is currently running E-861 PZ205E Release 1.2.1 Page 116 GCS Commands #24 (Stop All Axes) Description: Stops all axes abruptly. For details see the notes below. Sets error code to 10. This command is identical in function to STP (p. 182), but only one character must be send via the interface. Therefore #24 can also be used while the controller is performing time-consuming tasks. Format: #24 (ASCII character 24) Arguments: none Response: none Notes: #24 stops all motion caused by move commands (MOV (p. 151), MVR (p. 153), OAD (p. 155), OSM (p. 163), OMA (p. 158), OMR (p. 161), STE (p. 181)), referencing commands (FNL (p. 129), FPL (p. 131), FRF (p. 133)) and macros (MAC (p. 146)). After the axes are stopped, if servo is on, their target positions are set to their current positions. HLT (p. 137) in contrast to STP stops motion with given system deceleration with regard to system inertia. *IDN? (Get Device Identification) Description: Reports the device identity number. Format: *IDN? Arguments: none Response: One-line string terminated by line feed with controller name, serial number and firmware version Notes: For E-861, *IDN? replies something like: (c)2010 Physik Instrumente(PI) Karlsruhe,E-861 Version 7.2.0 www.pi.ws E-861 PZ205E Release 1.2.1 Page 117 GCS Commands ACC (Set Closed-Loop Acceleration) Description: Set acceleration of given axes. The ACC setting only takes effect when the given axis is in closed-loop operation (servo on). ACC can be changed while the axis is moving. Format: ACC { } Arguments: is one axis of the controller is the acceleration value in physical units/s2. Response: none Troubleshooting: Illegal axis identifiers Notes: The lowest possible value for is 0. ACC changes the value of the Current closed-loop acceleration parameter (ID 0xB) in volatile memory (can be saved as power-on default with WPA (p. 190), can also be changed with SPA (p. 175) and SEP (p. 173)). The maximum value which can be set with the ACC command is given by the Maximum closed-loop acceleration parameter, ID 0x4A (can be changed with SPA (p. 175) and SEP (p. 173)). ACC? (Get Closed-Loop Acceleration) Description: Get the current value of the closed-loop acceleration. If all arguments are omitted, gets current value of all axes. Format: ACC? [{ }] Arguments: is one axis of the controller Response: { "=" LF} where is the current active closed-loop acceleration value in physical units / s2. www.pi.ws E-861 PZ205E Release 1.2.1 Page 118 GCS Commands CST? (Get Assignment of Stages to Axes) Description: Returns the name of the connected stage for the queried axis. Format: CST? [{ }] Arguments: is one axis of the controller Response: { "=" LF} where Notes: is the name of the stage assigned to the axis. The stage name is read from the Stage Name parameter (ID 0x3C) whose factory default value is "DEFAULT_STAGE-N". You can set the parameter value to the name of your stage using SPA (p. 175) or SEP (p. 173). See also "Controller Parameters" (p. 35). CSV? (Get Current Syntax Version) Description: Get current GCS syntax version used in the firmware. Format: CSV? Arguments: none Response: The current GCS syntax version, can be 1.0 (for GCS 1.0) or 2.0 (for GCS 2.0) DEC (Set Closed-Loop Deceleration) Description: Set deceleration of given axes. The DEC setting only takes effect when the given axis is in closed-loop operation (servo on). DEC can be changed while the axis is moving. Format: DEC { } Arguments: is one axis of the controller is the deceleration value in physical units/s2. Response: none Troubleshooting: Illegal axis identifiers www.pi.ws E-861 PZ205E Release 1.2.1 Page 119 GCS Commands Notes: The lowest possible value for is 0. DEC changes the value of the Current closed-loop deceleration parameter (ID 0xC) in volatile memory (can be saved as power-on default with WPA (p. 190), can also be changed with SPA (p. 175) and SEP (p. 173)). The maximum value which can be set with the DEC command is given by the Maximum closed-loop deceleration parameter, ID 0x4B (can be changed with SPA (p. 175) and SEP (p. 173)). DEC? (Get Closed-Loop Deceleration) Description: Get the current value of the closed-loop deceleration. If all arguments are omitted, gets current value of all axes. Format: DEC? [{ }] Arguments: is one axis of the controller Response: { "=" LF} where is the current active closed-loop deceleration value in physical units / s2. DEL (Delay The Command Interpreter) Description: Delays milliseconds. www.pi.ws Format: DEL Arguments: is the delay value in milliseconds. Response: none Notes: See the MAC command (p. 146) and "Working with Controller Macros" (p. 82) for more information. E-861 PZ205E Release 1.2.1 Page 120 GCS Commands DIO (Set Digital Output Line) Description: Switches the specified digital output line(s) to specified state(s). Use TIO? (p. 186) to get the number of installed digital I/O lines. Format: DIO { } Arguments: is one digital output line of the controller, see below for details is the state of the digital output line, see below for details Response: none Notes: Using the DIO command, you can activate/deactivate the Output 1 to Output 4 lines which are located on the "I/O" socket (p. 218). With the E-861, you can either set a single line per DIO command, or all lines at once. The identifiers to use for the lines are 1 to 4. With the identifier 0, all lines are set according to a bit pattern given by . If =1 the line is set to HIGH/ON, if =0 it is set to LOW/OFF. If = 0, a bit pattern can be set in decimal or hexadecimal format which gives the states for all lines. Do not use DIO on output lines for which the trigger output is activated with TRO. DIO? (Get Digital Input Lines) Description: Lists the states of the specified digital input lines. Can be used to query externally generated signals. Format: Arguments: www.pi.ws Use TIO? (p. 186) to get the number of installed digital I/O lines. DIO? [{ }] is the identifier of the digital input line, see below for details E-861 PZ205E Release 1.2.1 Page 121 GCS Commands Response: { "=" LF} where Notes: gives the state of the digital input line, see below for details Using the DIO? command, you can directly read the Input 1 to Input 4 lines which are located on the "I/O" socket (p. 218). With the E-861, you can either read a single line per DIO? command, or all lines at once. The identifiers to use for the lines are 1 to 4. If the identifier is omitted or 0, all lines are queried. If =0, the digital input is LOW/OFF, if =1, the digital input is HIGH/ON. If is 0, is a bit pattern which gives the states of all lines in hexadecimal format. DRC (Set Data Recorder Configuration) Description: Set data recorder configuration: determines the data source and the kind of data (RecordOption) used for the given data recorder table. Format: DRC Arguments: : is one data recorder table of the controller, see below : is the data source, for example an axis, output signal channel or input signal channel of the controller. The required source depends on the selected record option. : is the kind of data to be recorded (record option). See below for a list of the available record options and the corresponding data sources. Response: www.pi.ws none E-861 PZ205E Release 1.2.1 Page 122 GCS Commands Notes: The E-861 has two data recorder tables with 1024 points per table. With HDR? (p. 135) you will obtain a list of available record and trigger options and additional information about data recording. The number of available data recorder tables can be read with TNR? (p. 187). For detailed information see "Data Recording" (p. 88). Available record 0=Nothing is recorded options with the appropriate data 1=Target Position of axis (i.e. target position in sources: closed-loop operation) 2=Current Position of axis 3=Position Error of axis 70=Commanded Velocity of axis (open-loop or closed-loop velocity, depending on the current servo state) 71=Commanded Acceleration of axis (open-loop or closed-loop acceleration, depending on the current servo state) 73=Motor Output of axis 80=Signal Status Register of axis 81=Analog Input of input channel Note: The input channels can be the Input 1 to 4 lines of the I/O socket (p. 218) (use source ID 1 to 4) and the joystick axis (source ID 5) and joystick button inputs (source ID 6) on the Joystick socket (p. 220). The source ID 7 is reserved for an additional analog input channel. DRC? (get Data Recorder Configuration) Description: Returns settings made with DRC (p. 122). www.pi.ws Format: DRC? [{ }] Arguments: : is one data recorder table of the controller; if omitted settings for all tables are given. E-861 PZ205E Release 1.2.1 Page 123 GCS Commands Response: The current DRC settings: { "=" LF} where : is the data source, for example an axis or an output signal channel of the controller. The source type depends on the record option. : is the kind of data to be recorded See DRC for a list of the available record options and the corresponding data sources. DRR? (Get Recorded Data Values) Description: Reading of the last recorded Data Set. Reading can take some time depending on the number of points to be read! It is possible to read the data while recording is still in progress. Format: DRR? [ [{ }]] Arguments: : is the first point to be read from the data recorder table, starts with index 1 : is the number of points to be read per table : is one data recorder table of the controller Response: The recorded data in GCS array format, see the separate manual for GCS array, SM 146E, and the example below Notes: If is omitted, the data from all tables with non-zero record option (see DRC (p. 122)) is read. With HDR? (p. 135) you will obtain a list of available record options and trigger options and additional information about data recording. For detailed information see "Data Recording" (p. 88). www.pi.ws E-861 PZ205E Release 1.2.1 Page 124 GCS Commands Example: www.pi.ws drr? 1 20 # REM E-861 # # VERSION = 1 # TYPE = 1 # SEPARATOR = 32 # DIM = 2 # SAMPLE_TIME = 0.000020 # NDATA = 20 # # NAME0 = Actual Position of Axis AXIS:1 # NAME1 = Position Error of Axis AXIS:1 # # END_HEADER 5.00000 0.00000 4.99998 0.00002 5.00000 0.00000 5.00000 0.00000 5.00000 0.00000 5.00000 0.00000 5.00000 0.00000 4.99998 0.00002 5.00000 0.00000 4.99998 0.00002 5.00000 0.00000 5.00000 0.00000 5.00000 0.00000 5.00000 0.00000 4.99998 0.00002 5.00000 0.00000 4.99998 0.00002 4.99998 0.00002 5.00000 0.00002 4.99998 0.00004 E-861 PZ205E Release 1.2.1 Page 125 GCS Commands DRT (Set Data Recorder Trigger Source) Description: Defines a trigger source for the given data recorder table. Format: DRT Arguments: is one data recorder table of the controller. See below for details. ID of the trigger source, see below for a list of available options depends on the trigger source, can be a dummy, see below Response: none Notes: By default data recording is triggered when a step response measurement is made with STE (p. 181). A trigger option set with DRT will become valid for all data recorder tables with non-zero record option (see DRC (p. 122)). With HDR? (p. 135) you will obtain a list of available record options and trigger options and additional information about data recording. For detailed information see "Data Recording" (p. 88). Available trigger options: 0 = default setting; data recording is triggered with STE; must be a dummy 1 = any command changing position (e.g. MVR (p. 153), MOV (p. 151), OAD (p. 155), OSM (p. 163)); must be a dummy 2 = next command, resets trigger after execution; must be a dummy 3 = reserved 4 = reserved 5 = reserved 6 = any command changing position (e.g. MVR, MOV, OAD, OSM), resets trigger after execution; must be a dummy www.pi.ws E-861 PZ205E Release 1.2.1 Page 126 GCS Commands DRT? (Get Data Recorder Trigger Source) Description: Returns the trigger source for the data recorder tables. Format: DRT? [{ }] Arguments: is one data recorder table of the controller { "=" LF} Response: where is the ID of the trigger source, see DRT (p. 126) for details Notes: depends on the trigger source, if 0 it is a dummy, see DRT for details Since all data recorder tables of the E-861 have the same trigger source, the DRT? response is given as a single line of the form 0= ERR? (Get Error Number) Description: Get error code of the last occurred error and reset the error to 0. Only the last error is buffered. Therefore you should call ERR? after each command. The error codes and their descriptions are fully listed in "Error Codes" (p. 192). www.pi.ws Format: ERR? Arguments: none Response: The error code of the last occurred error (int). Troubleshooting: Communication breakdown E-861 PZ205E Release 1.2.1 Page 127 GCS Commands FED (Find Edge) Description: Moves given axis to a given signal edge. In contrast to the referencing commands (FNL (p. 129), FPL (p. 131) and FRF (p. 133)), this command does not change the reference state of the axis and does not set a certain position value at the selected edge. It does move out of the limit condition, therefore the axis motion finishes at the same position as with the corresponding referencing commands. If multiple axes are given in the command, they are moved synchronously. Format: Caution: Do not use this command if no sensor is present in your system. Otherwise the connected mechanics can run into the hardstop at full speed which may cause damage to your hardware setup. FED { } Arguments: is one axis of the controller. is the type of edge the axis has to move to. See below for available edge types. depends on the selected edge and qualifies it. See below for details. Response: none Troubleshooting: Illegal axis identifier; limit switches and/or reference switch are disabled (see below); servo is off Notes: This command can be used both with servo enabled or disabled (open-loop and closed-loop operation) for the commanded axis, see SVO (p. 183) command description . The E-861 firmware detects the presence or absence of reference switch and limit switches using controller parameters (ID 0x14 for reference switch; ID 0x32 for limit switches). According to the values of those parameters, the E-861 enables or disables FED motions to the appropriate signal edges. Adapt the parameter values to your hardware using www.pi.ws E-861 PZ205E Release 1.2.1 Page 128 GCS Commands SPA (p. 175) or SEP (p. 173). See "Controller Parameters" (p. 35) for more information. FED can be used to measure the physical travel range of a new mechanics and thus to identify the values for the corresponding controller parameters: the distance from negative to positive limit switch, the distance between the negative limit switch and the reference switch (DISTANCE_REF_TO_N_LIM, parameter ID 0x17), and the distance between reference switch and positive limit switch (DISTANCE_REF_TO_P_LIM, parameter ID 0x2F). See "Travel Range Adjustment" (p. 92) for more information. The motion can be interrupted by #24 (p. 117), STP (p. 182) and HLT (p. 137). Motion commands like FED are not allowed when the joystick is active for the axis. See "Joystick Control" (p. 79) for details. Available edge types and parameters: The following edge types with their parameter settings are available: 1 = negative limit switch, must be 0 2 = positive limit switch, must be 0 3 = reference switch, must be 0 FNL (Fast Reference Move To Negative Limit) Description: Performs a reference move. Moves the given axis to the negative physical limit of its travel range and sets the current position to a defined value. See below for details. If multiple axes are given in the command, they are moved synchronously. Caution: Do not use this command if no sensor is present in your system. Otherwise the connected mechanics can run into the hardstop at full speed which may cause damage to your hardware setup. www.pi.ws E-861 PZ205E Release 1.2.1 Page 129 GCS Commands Format: FNL [{ }] Arguments: is one axis of the controller, if omitted, all axes are affected. Response: none Troubleshooting: Illegal axis identifier Notes: This command can be used both with servo enabled or disabled for the commanded axis, see SVO (p. 183) command description. If reference move was successful, absolute motion will afterwards be possible in open-loop and in closedloop operation. The reference mode must be set to "1" (factory default) with the RON command (p. 170) if referencing is to be done by performing a reference move. See "Referencing" (p. 51) for further details. With the E-861, the negative limit switch of the mechanics is used to determine the negative physical limit of the travel range. The difference of VALUE_AT_REF_POS (parameter ID 0x16) and DISTANCE_REF_TO_N_LIM (parameter ID 0x17) is set as the current position when the axis is at the negative limit switch (value can be negative). This command can be interrupted by #24 (p. 117), STP (p. 182) and HLT (p. 137). Use FRF? (p. 134) to check whether the reference move was successful. Use FRF (p. 133) instead of FNL to perform a reference move for an axis which has no limit switches but a reference sensor. For best repeatability, always reference in the same way. If the soft limits (MAX_TRAVEL_RANGE_POS and MAX_TRAVEL_RANGE_NEG) are used to reduce the travel range, the limit switches cannot be used for reference moves. The FNL and FPL commands will provoke an error message, and only the reference switch can be used for a reference move (FRF). The soft limits may not be outside of the physical travel range: www.pi.ws E-861 PZ205E Release 1.2.1 Page 130 GCS Commands MAX_TRAVEL_RANGE_POS ≤ DISTANCE_REF_TO_P_LIM + VALUE_AT_REF_POS MAX_TRAVEL_RANGE_NEG ≥ VALUE_AT_REF_POS DISTANCE_REF_TO_N_LIM Otherwise, reference moves to the limit switches would have incorrect results because the values of the soft limits would be set at the end of the referencing procedure. See "Travel Range Adjustment" (p. 92) for more information. FPL (Fast Reference Move To Positive Limit) Description: Performs a reference move. Moves the given axis to the positive physical limit of its travel range and sets the current position to a defined value. See below for details. If multiple axes are given in the command, they are moved synchronously. Format: Caution: Do not use this command if no sensor is present in your system. Otherwise the connected mechanics can run into the hardstop at full speed which may cause damage to your hardware setup. FPL [{ }] Arguments: is one axis of the controller, if omitted, all axes are affected. Response: none Troubleshooting: Illegal axis identifier Notes: This command can be used both with servo enabled or disabled for the commanded axis, see SVO (p. 183) command description. If reference move was successful, absolute motion will afterwards be possible in open-loop and in closed-loop operation. The reference mode must be set to "1" (factory default) with the RON command (p. 170) if www.pi.ws E-861 PZ205E Release 1.2.1 Page 131 GCS Commands referencing is to be done by performing a reference move. See "Referencing" (p. 51) for further details. With the E-861, the positive limit switch of the mechanics is used to determine the positive physical limit of the travel range. The sum of VALUE_AT_REF_POS (parameter ID 0x16) and DISTANCE_REF_TO_P_LIM (parameter ID 0x2F) is set as the current position when the axis is at the positive limit switch. This command can be interrupted by #24 (p. 117), STP (p. 182) and HLT (p. 137). Use FRF? (p. 134) to check whether the reference move was successful. Use FRF (p. 133) instead of FPL to perform a reference move for an axis which has no limit switches but a reference sensor. For best repeatability, always reference in the same way. If the soft limits (MAX_TRAVEL_RANGE_POS and MAX_TRAVEL_RANGE_NEG) are used to reduce the travel range, the limit switches cannot be used for reference moves. The FNL and FPL commands will provoke an error message, and only the reference switch can be used for a reference move (FRF). The soft limits may not be outside of the physical travel range: MAX_TRAVEL_RANGE_POS ≤ DISTANCE_REF_TO_P_LIM + VALUE_AT_REF_POS MAX_TRAVEL_RANGE_NEG ≥ VALUE_AT_REF_POS DISTANCE_REF_TO_N_LIM Otherwise, reference moves to the limit switches would have incorrect results because the values of the soft limits would be set at the end of the referencing procedure. See "Travel Range Adjustment" (p. 92) for more information. www.pi.ws E-861 PZ205E Release 1.2.1 Page 132 GCS Commands FRF (Fast Reference Move To Reference Switch) Description: Performs a reference move. Moves the given axis to the reference switch and sets the current position to a defined value. See below for details. If multiple axes are given in the command, they are moved synchronously. Caution: Do not use this command if no sensor is present in your system. Otherwise the connected mechanics can run into the hardstop at full speed which may cause damage to your hardware setup. Format: FRF [{ }] Arguments: is one axis of the controller, if omitted, all axes are affected. Response: none Troubleshooting: Illegal axis identifier Notes: This command can be used both with servo enabled or disabled for the commanded axis, see SVO (p. 183) command description. If reference move was successful, absolute motion will afterwards be possible in open-loop and in closed-loop operation. The reference mode must be set to "1" (factory default) with the RON command (p. 170) if referencing is to be done by performing a reference move. See "Referencing" (p. 51) for further details. The value of the VALUE_AT_REF_POS parameter (ID 0x16) is set as the current position when the axis is at the reference switch. This command can be interrupted by #24 (p. 117), STP (p. 182) and HLT (p. 137). Use FRF? (p. 134) to check whether the reference move was successful. Use FNL (p. 129) or FPL (p. 131) instead of FRF to www.pi.ws E-861 PZ205E Release 1.2.1 Page 133 GCS Commands perform a reference move for an axis which has no reference sensor but limit switches. For best repeatability, always reference in the same way. The FRF command always approaches the reference switch from the same side, no matter where the axis is when it is issued. See "Travel Range Adjustment" (p. 92) for more information. FRF? (Get Referencing Result) Description: Indicates whether the given axis is referenced or not. Format: An axis is considered as "referenced" when the current position value is set to a known position. This is the case when a reference move was successfully performed with FNL (p. 129), FPL (p. 131) or FRF (p. 133) or when the position was set directly with POS (p. 166) (depending on the referencing mode set with RON (p. 170)). FRF? [{ }] Arguments: : is one axis of the controller Response: { "=" LF} where indicates whether the axis was successfully referenced (=1) or not (=0). Troubleshooting: www.pi.ws Illegal axis identifier E-861 PZ205E Release 1.2.1 Page 134 GCS Commands GOH (Go To Home Position) Description: Move given axes to home position. GOH [{ }] is the same as MOV { 0} Servo must be enabled for the commanded axis prior to using this command (closed-loop operation). This command can be interrupted by #24 (p. 117), STP (p. 182) and HLT (p. 137). Caution: Do not use this command if no sensor is present in your system. Otherwise the connected mechanics can run into the hardstop at full speed which may cause damage to your hardware setup. Format: GOH [{ }] Arguments: : is one axis of the controller, if omitted, all axes are affected Response: none Troubleshooting: Illegal axis identifier HDR? (Get All Data Recorder Options) Description: List a help string which contains all information available about data recording (record options and trigger options, information about additional parameters and commands concerned with data recording). Format: HDR? Arguments: www.pi.ws none E-861 PZ205E Release 1.2.1 Page 135 GCS Commands Response: #RecordOptions { "=" [ of ]} #TriggerOptions [{ "=" }] #Parameters to be set with SPA [{ “=“ }] #Additional information [{ "(" ")"}] end of help Example: For the E-861, the HDR? response is as follows: #RecordOptions 0=Nothing is recorded 1=Commanded Position of Axis 2=Actual Position of Axis 3=Position Error of Axis 70=Commanded Velocity of Axis 71=Commanded Acceleration of Axis 73=Motor Output of Axis 80=Signal Status Register of Axis 81=Analog input (Channel = 1 to 7) #TriggerOptions 0=default setting 1=any command changing position (e.g. MOV) 2=next command 6=any command changing position (e.g. MOV), reset trigger after execution #Additional information 2 record tables 1024 datapoints per table end of help Note: TriggerOptions = 0 (default) means that recording is triggered by the STE (p. 181) command. HLP? (Get List Of Available Commands) Description: List a help string which contains all commands available. Format: HLP? Arguments: none Response: List of commands available Troubleshooting: Communication breakdown www.pi.ws E-861 PZ205E Release 1.2.1 Page 136 GCS Commands HLT (Halt Motion Smoothly) Description: Halt the motion of given axes smoothly. For details see the notes below. Error code 10 is set. #24 (p. 117) and STP (p. 182) in contrast abort current motion as fast as possible for the controller without taking care of systems inertia or oscillations. Format: HLT [{ }] Arguments: : is one axis of the controller, if omitted all axes are halted Response: none Troubleshooting: Illegal axis identifier Notes: HLT stops motion with given system deceleration with regard to system inertia. HLT stops all motion caused by move commands (MOV (p. 151), MVR (p. 153), OAD (p. 155), OMA (p. 158), OMR (p. 161), OSM (p. 163), STE (p. 181)), referencing commands (FNL (p. 129), FPL (p. 131), FRF (p. 133)) and macros (MAC (p. 146)). After the axes are stopped, if servo is on their target positions are set to their current positions. www.pi.ws E-861 PZ205E Release 1.2.1 Page 137 GCS Commands HPA? (Get List Of Available Parameters) Responds with a help string which contains all Description: available parameters with short descriptions. See "Controller Parameters" (p. 35) for further details. The listed parameters can be changed and/or saved using the following commands: SPA (p. 175) affects the parameter settings in volatile memory (RAM). WPA (p. 190) copies parameter settings from RAM to non-volatile memory. SEP (p. 173) writes parameter settings directly into non-volatile memory (without changing RAM settings). RPA (p. 171) resets RAM to the values from nonvolatile memory. Format: HPA? Arguments: none Response: { "=" LF} where is the ID of one parameter, hexadecimal format is a string which describes the corresponding parameter. The string has following format: is the parameter name JAS? (Query Joystick Axis Status) Description: Get the current status of the given axis of the given joystick device which is directly connected to the controller. Format: www.pi.ws JAS? [{ }] E-861 PZ205E Release 1.2.1 Page 138 GCS Commands Arguments: is one joystick device connected to the controller; see below for details is one of the axes of the joystick device; see below for details Response: { "=" } where Notes: is the factor which is currently applied to the current valid velocity setting of the controlled motion axis, corresponds to the current displacement of the joystick axis. See below for details. One joystick device can be connected to the Joystick socket (p. 220) of the E-861, the identifier is 1. The E-861 supports one axis of the joystick device, the identifier of the joystick axis is 1. See also "Accessible Items and Their Identifiers" (p. 53). The factor is applied to the velocity set with VEL (p. 188) (closed-loop operation) or OVL (p. 165) (open-loop operation), the range is -1.0 to 1.0. Examples: With a factor of 0, the joystick axis is at the center position; with a factor of -0.7, the displacement of the joystick axis is about 2/3 in negative direction, provided that a linear lookup table is currently valid (see JLT (p. 142) for an example). JAX (Set Axis Controlled By Joystick) Description: Set axis controlled by a joystick which is directly connected to the controller. Each axis of the controller can only be controlled by one joystick axis. Format: JAX Arguments: is one joystick device connected to the controller; see below for details is one of the axes of the joystick device; see below for details is one axis of the controller Response: www.pi.ws none E-861 PZ205E Release 1.2.1 Page 139 GCS Commands Notes: One joystick device can be connected to the Joystick socket (p. 220) of the E-861, the identifier is 1. The E-861 supports one axis of the joystick device, the identifier of the joystick axis is 1. See also "Accessible Items and Their Identifiers" (p. 53). JAX? (Get Axis Controlled By Joystick) Description: Get axis controlled by a joystick which is directly connected to the controller. Format: JAX? [{ }] Arguments: is one joystick device connected to the controller; see below for details is one of the axes of the joystick device; see below for details Response: { "="{ }LF} where is one axis of the controller Notes: One joystick device can be connected to the Joystick socket (p. 220) of the E-861, the identifier is 1. The E-861 supports one axis of the joystick device, the identifier of the joystick axis is 1. See also "Accessible Items and Their Identifiers" (p. 53). JBS? (Query Joystick Button Status) Description: Get the current status of the given button of the given joystick device which is directly connected to the controller. Format: JBS? [{ }] Arguments: is one joystick device connected to the controller; see below for details is one of the buttons of the joystick device; see below for details www.pi.ws E-861 PZ205E Release 1.2.1 Page 140 GCS Commands Response: { "=" } where indicates if the joystick button is pressed; 0 = not pressed, 1 = pressed Notes: One joystick device can be connected to the Joystick socket (p. 220) of the E-861, the identifier is 1. The E-861 supports one button of the joystick device, the identifier of the joystick button is 1. See also "Accessible Items and Their Identifiers" (p. 53). JDT (Set Joystick Default Lookup Table) Description: Set lookup table type for the given axis of the given joystick device which is directly connected to the controller. Format: Arguments: The current valid lookup-table content for the specified joystick axis is overwritten by the selection made with JDT. JDT { } is one joystick device connected to the controller; see below for details is one of the axes of the joystick device; see below for details defines the type of lookup-table profile to use; see below for details Response: none Notes: One joystick device can be connected to the Joystick socket (p. 220) of the E-861, the identifier is 1. The E-861 supports one axis of the joystick device, the identifier of the joystick axis is 1. See also "Accessible Items and Their Identifiers" (p. 53). Available lookup The E-861 provides the following types for the lookuptables: table profile: 1 = linear (power-on default) 2 = parabolic www.pi.ws E-861 PZ205E Release 1.2.1 Page 141 GCS Commands JLT (Fill Joystick Lookup Table) Description: Fill the lookup table for the given axis of the given joystick device which is directly connected to the controller. Format: Arguments: The amplitudes of the joystick axes (i.e. their displacements) are mapped to the current valid velocity settings of the controller axes. For each joystick axis there is a lookup table that defines this mapping. With JLT this table can be written, or a default table profile provided by the controller can be loaded with the JDT command (p. 141). JLT is one joystick device connected to the controller; see below for details is one of the axes of the joystick device; see below for details is the index of a point in the lookup table, starts with 1 is the value of point n; 256 values must be written. The first point corresponds to the maximum joystick axis displacement in negative direction, the 256th point to the maximum displacement in positive direction. Response: none Notes: One joystick device can be connected to the Joystick socket (p. 220) of the E-861, the identifier is 1. The E-861 supports one axis of the joystick device, the identifier of the joystick axis is 1. See also "Accessible Items and Their Identifiers" (p. 53). The values are factors which will during joystick control be applied to the velocity set with VEL (p. 188) (closed-loop operation) or OVL (p. 165) (open-loop operation), the range is -1.0 to 1.0. www.pi.ws E-861 PZ205E Release 1.2.1 Page 142 GCS Commands Notes: Example: In the current lookup table, point 1 has the value 1, hence the controlled axis will move with full velocity in positive direction at the maximum positive displacement of the joystick. Points 122 to 135 have the value 0, i.e. at the center position of the joystick and in a small area around the center, the velocity is 0 and the controlled axis will not move. Point 236 has the value -0.7021, i.e. when the displacement of the joystick axis is about 2/3 in negative direction, the controlled axis will move in negative direction with about 2/3 of the velocity. Point 256 has the value -1, i.e. the controlled axis will move with full velocity in negative direction at the maximum negative displacement of the joystick. JLT? (Get Joystick Lookup Table Values) Description: Reading of the current valid lookup table values. Format: JLT? [ [{ }]] Arguments: : is the start point in the lookup table, starts with 1 : is the number of points to be read per joystick axis; maximum number is 256 is one joystick device connected to the controller; see below for details is one of the axes of the joystick device; see below for details Response: www.pi.ws The lookup table content in GCS array format, see the separate manual for GCS array, SM 146E, and the example below E-861 PZ205E Release 1.2.1 Page 143 GCS Commands Notes: Example: www.pi.ws With the E-861, and must be omitted in the JLT? command, while and are always required. The values in the lookup table are factors which will during joystick control be applied to the velocity set with VEL (p. 188) (closed-loop operation) or OVL (p. 165) (open-loop operation), the range is 1.0 to 1.0. jlt? 1 20 # TYPE = 1 # # SEPARATOR = 32 # DIM = 0 # NDATA = 20 # NAME0 = Joysticktable 1 # END HEADER 1.0000 0.9833 0.9677 0.9521 0.9365 0.9208 0.9052 0.8896 0.8750 0.8593 0.8447 0.8300 0.8154 0.8007 0.7861 0.7714 0.7578 0.7431 0.7294 0.7158 E-861 PZ205E Release 1.2.1 Page 144 GCS Commands JON (Set Joystick Activation Status) Description: Enable or disable a joystick device which is directly connected to the controller. Format: Arguments: For joystick control of a controller axis, this axis must be assigned to a joystick axis with JAX (p. 139), and the corresponding joystick device must be enabled with JON. JON { } is one joystick device connected to the controller; see below for details 1 enables the joystick device, 0 disables joystick device Response: none Notes: One joystick device can be connected to the Joystick socket (p. 220) of the E-861, the identifier is 1. See also "Accessible Items and Their Identifiers" (p. 53). Motion commands like MOV (p. 151) or OSM (p. 163) are not allowed when a joystick is active on the axis. See "Joystick Control" (p. 79) for details. JON? (Get Joystick Activation Status) Description: Get activation state of the given joystick device which is directly connected to the controller. Format: JON? [{ }] Arguments: is one joystick device connected to the controller; see below for details Response: { "=" } where is the joystick activation state: 1 = joystick device enabled, 0 = joystick device disabled Notes: www.pi.ws One joystick device can be connected to the Joystick socket (p. 220) of the E-861, the identifier is 1. See also "Accessible Items and Their Identifiers" (p. 53). E-861 PZ205E Release 1.2.1 Page 145 GCS Commands LIM? (Indicate Limit Switches) Description: Indicates whether axes have limit switches. Format: LIM? [{ }] Arguments: : is one axis of the controller Response: { "=" LF} where indicates whether the axis has limit switches (=1) or not (=0). Troubleshooting: Illegal axis identifier Notes: The E-861 firmware detects the presence or absence of limit switches using a controller parameter (ID 0x32). According to the value of this parameter, the E-861 enables or disables the stopping of the motion at the limit switches and reference moves using FNL (p. 129) or FPL (p. 131). Adapt the parameter value to your hardware using SPA (p. 175) or SEP (p. 173). See "Controller Parameters" (p. 35) for more information. MAC (Call Macro Function) Description: Call a macro function. Permits recording, deleting and running macros on the controller. Format: MAC { } in particular: MAC BEG MAC DEF MAC DEF? MAC DEL MAC END MAC NSTART MAC START www.pi.ws E-861 PZ205E Release 1.2.1 Page 146 GCS Commands Arguments: determines which macro function is called. The following keywords and parameters are used: MAC BEG Start recording a macro to be named macroname on the controller; may not be used in a macro; the commands that follow become the macro, so if successful, the error code cannot be queried. End the recording with MAC END. MAC END Stop macro recording (cannot become part of a macro) MAC DEF Set specified macro as start-up macro. This macro will be automatically executed with the next power-on or reboot of the controller. If is omitted, the current start-up macro selection is canceled. MAC DEF? Ask for the start-up macro Response: If no start-up macro is defined, the response is an empty string with the terminating character. MAC DEL Deletes specified macro. : MAC NSTART