User Gui de Original Instructions 2 HA0278T Rev F Aug 2014 Contents Chapter 1 Safety ............................................................................................. 4 1.1 Safety Information .................................................................................. 4 1.2 General Warnings .................................................................................. 4 Chapter 2 Overview........................................................................................ 5 2.1 Introduction ............................................................................................. 5 2.2 APT PC Software Overview ................................................................... 7 2.2.1 Introduction ......................................................................................................... 7 2.2.2 APTUser Utility ................................................................................................... 8 2.2.3 APT Config Utility ............................................................................................... 9 2.2.4 APT Server (ActiveX Controls) ......................................................................... 10 2.2.5 Software Upgrades ........................................................................................... 11 Chapter 3 Getting Started ............................................................................ 12 3.1 Installing APT Software ........................................................................ 12 3.2 Mechanical Installation ......................................................................... 13 3.2.1 Siting ................................................................................................................ 13 3.2.2 Environmental Conditions ................................................................................ 13 3.3 Electrical Installation ............................................................................. 14 3.3.1 Connecting To The Supply ............................................................................... 14 3.3.2 Fuses ................................................................................................................ 14 3.3.3 Rear Panel Connections .................................................................................. 15 3.4 Front Panel Controls and Indicators .................................................... 16 3.5 Connecting The Hardware ................................................................... 16 3.6 Select the Stage Type (Using APTConfig) ........................................... 17 3.7 Verifying Software Operation ............................................................... 18 3.7.1 Initial Setup ....................................................................................................... 18 Chapter 4 Operation - Tutorial ................................................................... 20 4.1 Introduction ........................................................................................... 20 4.2 Using the APT User Utility .................................................................... 20 4.3 Homing Motors ..................................................................................... 21 4.4 Moving to an Absolute Position ............................................................ 22 4.5 Changing Motor Parameters ................................................................ 23 4.6 Jogging ................................................................................................. 24 4.7 Graphical Control Of Motor Positions (Point and Move) ...................... 25 4.8 Setting Move Sequences ..................................................................... 27 4.9 Using a Joystick Console ..................................................................... 30 4.10 Creating a Simulated Configuration Using APT Config ........................ 31 4.11 Stage/Axis Tab ..................................................................................... 33 Continued...... 3 Two-, and Three-Channel Stepper Motor Controller Chapter 5 Software Reference .................................................................... 34 5.1 Introduction ........................................................................................... 34 5.2 GUI Panel ............................................................................................. 34 5.3 Settings Panel ...................................................................................... 36 5.3.1 Moves/Jogs tab ................................................................................................ 36 5.3.2 Stage/Axis tab .................................................................................................. 39 5.3.3 Advanced Tab .................................................................................................. 44 Appendices Appendix A Rear Panel Connector Pinout Details .................................... 48 Appendix B Using the RS232 or Virtual Comm Port.................................. 54 Appendix C Preventive Maintenance ......................................................... 57 Appendix D Specifications and Associated Parts .................................... 58 Appendix E Motor Control Method Summary ........................................... 60 Appendix F Stepper Motor Operation - Background ................................ 64 Appendix G Regulatory ............................................................................... 70 Appendix H Thorlabs Worldwide Contacts ............................................... 75 4 Chapter 1 Safety 1.1 Safety Information For the continuing safety of the operators of this equipment, and the protection of the equipment itself, the operator should take note of the Warnings, Cautions and Notes throughout this handbook and, where visible, on the product itself. The following safety symbols may be used throughout the handbook and on the equipment itself. 1.2 General Warnings Shock Warning Given when there is a risk of injury from electrical shock. Warning Given when there is a risk of injury to users. Caution Given when there is a risk of damage to the product. Note Clarification of an instruction or additional information. Warnings If this equipment is used in a manner not specified by the manufacturer, the protection provided by the equipment may be impaired. In particular, excessive moisture may impair operation. Spillage of fluid, such as sample solutions, should be avoided. If spillage does occur, clean up immediately using absorbant tissue. Do not allow spilled fluid to enter the internal mechanism. 5 Chapter 2 Overview 2.1 Introduction The BSC202 and BSC203 2- and 3-channel Stepper Motor Controllers are the next generation of enhanced controllers using the familiar APTUser interface. Many new features are provided, including a choice between trapezoidal and S-shaped velocity profiles, a higher theoretical microstep resolution (409600 for a 200 full step motor) and speeds more than twice that achieved by its predecessors. They are designed to drive larger framed 2-phase bipolar stepper motors, with and without encoder feedback, and can be used in a wide variety of applications. These high power units deliver up to 48V/50W peak (25W average) drive power per channel and are compatible with most stepper driven nano-positioning actuators & stages in the Thorlabs range. The unit combines the latest high speed digital signal processors (DSP) with low- noise analog electronics and ActiveX software technology for effortless high resolution microstepping of up to three axes. Additional axes can be driven by connecting one or more benchtop units via a standard USB hub.The apt stepper motor controller is supplied with a full suite of software support tools. An intuitive graphical instrument panel allows immediate control and visualization of the operation of the stepper controllers, and any other controllers that are installed in the system. See Chapter 5 for a full description of the apt system software. Fig. 2.1 APT Three Channel Stepper Motor Controller (BSC203) 6 HA0278T Rev F Aug 2014 Chapter 2 Stepper motors give excellent low speed performance and positioning stability compared with DC servo motors. A wide range of 2-phase bipolar stepper motors and associated actuators are commercially available, each with its own characteristics, such as step resolution, peak phase current or voltage, and lead screw pitch. For this reason the apt stepper unit operation is fully configurable (parameterized) with key settings exposed through the associated graphical interface panels. Motor step resolution, and lead screw pitch can be set for a particular motor/actuator combination, phase currents can be limited to suitable peak powers as required, and limit switch configuration is accommodated through a flexible set of limit switch logic settings. Moreover, relative and absolute moves can be initiated with move profiles set using velocity profile parameters. Similarly, home sequences have a full set of associated parameters that can be adjusted for a particular stage or actuator. For simplicity of operation, the apt software incorporates pre-configured settings for each of the Thorlabs stages and actuators, while still exposing all parameters individually for use with other stepper motor driven systems. For convenience and ease of use, adjustment of many key parameters is possible through direct interaction with the graphical panel. For example a move to the next position can be initiated by clicking directly on the position display and entering a new value (see the tutorial in Chapter for further details). Furthermore, all such settings and parameters are also accessible through the ActiveX programmable interfaces for automated alignment sequences. The apt stepper unit also supports encoder feedback through dedicated quadrature encoded pulse (QEP) inputs, one for each channel of operation. Through conversion routines, the apt software is able to use this feedback signal to generate encoder position for access either through the GUI or via programmable interfaces for custom closed loop algorithms. A built in algorithm can be enabled to allow the stepper system to reach and maintain an encoded position through an iterative move sequence. Please see the APTServer online helpfile or the handbook supplied with your linear encoded stage for further details. In the remainder of this handbook, the Tutorial section (Chapter ) provides a good initial understanding on using the unit, and the reference sections (Chapter 5) covers all operating modes and parameters in detail. 7 Two-, and Three-Channel Stepper Motor Controller 2.2 APT PC Software Overview 2.2.1 Introduction As a member of the APT range of controllers, the BSC202 and BSC203 stepper controllers share many of the associated software benefits. This includes USB connectivity (allowing multiple units to be used together on a single PC), fully featured Graphical User Interface (GUI) panels, and extensive software function libraries for custom application development. The APT software suite supplied with all APT controllers provides a flexible and powerful PC based control system both for users of the equipment, and software programmers aiming to automate its operation. For users, the APTUser (see Section 2.2.2.) and APTConfig (see Section 2.2.3.) utilities allow full control of all settings and operating modes enabling complete out- of-box operation without the need to develop any further custom software. Both utilities are built on top of a sophisticated, multi-threaded ActiveX engine (called the APT server) which provides all of the necessary APT system software services such as generation of GUI panels, communications handling for multiple USB units, and logging of all system activity to assist in hardware trouble shooting. It is this APT server engine that is used by software developers to allow the creation of advanced automated positioning applications very rapidly and with great ease. The APT server is described in more detail in Section 2.2.4. Aside ActiveX, a Windows-based, language-independent technology, allows a user to quickly develop custom applications that automate the control of APT system hardware units. Development environments supported by ActiveX technology include Visual Basic, LabView, Borland C++ Builder, Visual C++, Delphi, and many others. ActiveX technology is also supported by .NET development environments such as Visual Basic.NET and Visual C#.NET. ActiveX controls are a specific form of ActiveX technology that provide both a user interface and a programming interface. An ActiveX control is supplied for each type of APT hardware unit to provide specific controller functionality to the software developer. See Section 2.2.4. for further details. 8 HA0278T Rev F Aug 2014 Chapter 2 2.2.2 APTUser Utility The APTUser application allows the user to interact with a number of APT hardware control units connected to the host PC. This program displays multiple graphical instrument panels to allow multiple APT units to be controlled from the same screen. All basic operating parameters can be altered and, similarly, all operations (such as motor moves) can be initiated. Settings and parameter changes can be saved and loaded to allow multiple operating configurations to be created and easily applied. For many users, the APTUser application provides all of the functionality necessary to operate the APT hardware without the need to develop any further custom software. For those who do need to further customize and automate usage of the controller (e.g. to implement a positioning algorithm), the APTUser application illustrates how the various methods and properties of the APT ActiveX server can be exposed by a client application. Use of the APT User utility is covered in the PC tutorial (Chapter ) and in the APTUser online help file, accessed via the F1 key when using the APTUser utility. 9 Two-, and Three-Channel Stepper Motor Controller 2.2.3 APT Config Utility There are many system parameters and configuration settings associated with the operation of the APT Server. Most can be directly accessed using the various graphical panels, however there are several system wide settings that can be made 'off-line' before running the APT software. These settings have global effect; such as switching between simulator and real operating mode, associating mechanical stages to specific motor actuators and incorporation of calibration data. The APTConfig utility is provided as a convenient means for making these system wide settings and adjustments. Full details on using APTConfig are provided in the online help supplied with the utility. Use of the APT Config utility is covered in the PC tutorial (Chapter ) and in the APTConfig online help file, accessed via the F1 key when using the APTConfig utility. 10 HA0278T Rev F Aug 2014 Chapter 2 2.2.4 APT Server (ActiveX Controls) ActiveX Controls are re-usable compiled software components that supply both a graphical user interface and a programmable interface. Many such Controls are available for Windows applications development, providing a large range of re-usable functionality. For example, there are Controls available that can be used to manipulate image files, connect to the internet or simply provide user interface components such as buttons and list boxes. With the APT system, ActiveX Controls are deployed to allow direct control over (and also reflect the status of) the range of electronic controller units, including the BSC203 stepper motor controller. Software applications that use ActiveX Controls are often referred to as 'client applications'. Based on ActiveX interfacing technology, an ActiveX Control is a language independent software component. Consequently ActiveX Controls can be incorporated into a wide range of software development environments for use by client application developers. Development environments supported include Visual Basic, Labview, Visual C++, C++ Builder, HPVEE, Matlab, VB.NET, C#.NET and, via VBA, Microsoft Office applications such as Excel and Word. Consider the ActiveX Control supplied for a Stepper Motor Drive Card fitted to a BSC203 APT stepper controller unit (one panel is displayed for each channel (card) fitted. This Control provides a complete user graphical instrument panel to allow the motor unit to be manually operated, as well as a complete set of software functions (often called methods) to allow all parameters to be set and motor operations to be automated by a client application. The instrument panel reflects the current operating state of the controller unit to which it is associated (e.g. such as motor position). Updates to the panel take place automatically when a user (client) application is 11 Two-, and Three-Channel Stepper Motor Controller making software calls into the same Control. For example, if a client application instructs the associated stepper motor Control to move a motor, the progress of that move is reflected automatically by changing position readouts on the graphical interface, without the need for further programming intervention. The APT ActiveX Controls collection provides a rich set of graphical user panels and programmable interfaces allowing users and client application developers to interact seamlessly with the APT hardware. Each of the APT controllers has an associated ActiveX Control and these are described fully in system online help or the handbooks associated with the controllers. Note that the APTUser and APTConfig utilities take advantage of and are built on top of the powerful functionality provided by the APT ActiveX Server (as shown in Fig. 2.2). Fig. 2.2 System Architecture Diagram Refer to the main APT Software online help file, APTServer.hlp, for a complete programmers guide and reference material on using the APT ActiveX Controls collection. Additional software developer support is provided by the APT Support pages included on the software installation CD supplied with every APT controller. This CD contains a complete range of tutorial samples and coding hints and tips, together with handbooks for all the APT controllers. 2.2.5 Software Upgrades Thorlabs operate a policy of continuous product development and may issue software upgrades as necessary. Detailed instructions on installing upgrades are included on the APT Software CD ROM. 12 Chapter 3 Getting Started 3.1 Installing APT Software DO NOT CONNECT THE CONTROLLER TO YOUR PC YET 1) Insert the CD into your PC. 2) The CD should run automatically. If your CD does not start, double click the file autorun.exe, found on the Software CD. 3) A Welcome dialogue screen is displayed. Before installing the software, you are strongly advised to read the Installation Guide. Click the associated link. 4) Once you are familiar with the installation procedure, click the Install APT Software hyperlink displayed on the Welcome dialogue screen. 5) Follow the on-screen instructions - see the Installation Guide supplied for more information. Note When operating via a PC, direct user interaction with the unit is accomplished through intuitive graphical user interface panels (GUIs), which expose all key operating parameters and modes. The user can select multiple panel views displaying different information about a particular hardware unit. The multitasking architecture ensures that the graphical control panels always remain live, showing all current hardware activity. Caution Some PCs may have been configured to restrict the users ability to load software, and on these systems the software may not install/run. If you are in any doubt about your rights to install/run software, please consult your system administrator before attempting to install. If you experience any problems when installing software, contact Thorlabs on +44 (0)1353 654440 and ask for Technical Support. 13 Two-, and Three-Channel Stepper Motor Controller 3.2 Mechanical Installation 3.2.1 Siting The unit is designed to be mounted free standing on a shelf, benchtop or similar surface. 3.2.2 Environmental Conditions Location Indoor use only Maximum altitude 2000 m Temperature range 5 o C to 40 o C Maximum Humidity Less than 80% RH (non-condensing) at 31C To ensure reliable operation the unit should not be exposed to corrosive agents or excessive moisture, heat or dust. If the unit has been stored at a low temperature or in an environment of high humidity, it must be allowed to reach ambient conditions before being powered up. Caution When siting the unit, it should be positioned so as not to impede the operation of the rear panel power supply switch. Ensure that proper airflow is maintained to the rear of the unit. Warning Operation outside the following environmental limits may adversely affect operator safety. 14 HA0278T Rev F Aug 2014 Chapter 3 3.3 Electrical Installation 3.3.1 Connecting To The Supply 3.3.2 Fuses Two T 3A/250V a.c. antisurge ceramic fuses are located on the back panel, one for the live feed and one for the neutral as follows: When replacing fuses: 1) Switch off the power and disconnect the power cord before removing the fuse cover. 2) Always replace broken fuses with a fuse of the same rating and type. Shock Warning The unit must be connected only to an earthed fused supply of 110 to 230V. Use only power supply cables supplied by Thorlabs, other cables may not be rated to the same current. The unit is shipped to the UK, Europe and the USA, with the appropriate power plug already fitted. When shipped to other territories the appropriate power plug must be fitted by the user. Cable identification is as follows: Brown-Live Blue-Neutral Green/Yellow-Earth/Ground Fuse Rating Type Fused Line F1 T 3.15A ceramic; antisurge Live feed F2 T 3.15A ceramic; antisurge Neutral feed 15 Two-, and Three-Channel Stepper Motor Controller 3.3.3 Rear Panel Connections Fig. 3.1 Rear panel connections MOTOR DRIVE - (15-Pin D-Type, Female) Provides connection to the actuator. This connector provides all phase current drive and encoder feedback connections to drive a range of encoded and non-encoded stepper motors - see Section A.3. CONTROL I/O - (15-Pin D-Type, Female) The CONTROL I/O connector exposes a number of electrical signals useful for external control. It is possible to configure a particular controller to respond to trigger inputs, generate trigger outputs or both respond to and generate a trigger output - see Section 5.3.3. Motor jogging lines can be used to jog the motor in both forward and reverse directions from a remote handset (Jogging parameters (e.g. jog distance) are set via the GUI panel - see Section 5.3.1.). USB - USB port for system communications. HANDSET IN - Provides connection for the MJC001 Joystick - see Section 4.9. and Section A.2. INTERCONNECT - (9-Pin D-Type, Male) For Future Use. CH ID - For channel selection when using the MJC001 joystick - see Section 4.9. Note The USB cable length should be no more than 3 metres unless a powered USB hub is being used. ! INTERCONNECT 16 HA0278T Rev F Aug 2014 Chapter 3 3.4 Front Panel Controls and Indicators Fig. 3.2 Front panel controls and indicators Power LED Indicates that power is applied to the unit. CHANNEL ENABLE buttons Used to enable/disable channel functionality. The associated LED is lit when the channel is enabled. Disabling the channel allows the motor actuator to be moved manually. 3.5 Connecting The Hardware 1) Perform the mechanical installation as detailed in Section 3.2. 2) Install the APT Software - see Section 3.1. 3) Connect the stepper motor actuator to the Controller unit - see Section 3.3.3. 4) Connect the Controller unit to the power supply - see Section 3.3.1. 5) Connect the PSU to the main supply and switch ON. 6) Connect the Controller unit to your PC. 7) Windows TM should detect the new hardware. Wait while Windows TM installs the drivers for the new hardware - see the Getting Started guide for more information. Note On BSC202 units, the Channel 3 LED is not used. Note The USB cable should be no more than 3 metres in length. Communication lengths in excess of 3 metres can be achieved by using a powered USB hub). Power apt Precision Motion Controller CHANNEL ENABLE 1 2 3 17 Two-, and Three-Channel Stepper Motor Controller 3.6 Select the Stage Type (Using APTConfig) To ensure that a particular stage is driven properly by the system, a number of parameters must first be set. These parameters relate to the physical characteristics of the stage being driven (e.g. min and max positions, leadscrew pitch, homing direction etc.). To assist in setting these parameters correctly, it is possible, using the APT Config utility, to associate a specific stage type and axis with a motor controller channel. Once this association has been made, the APT server applies automatically, suitable default parameter values on boot up of the software. Even if a stage type and axis has been associated with a controller channel, it is still possible to alter these parameters if required, (e.g. for a custom stage type not selectable using the APT Config utility). 1) Shut down all applications using the APT server (e.g. APT User or your own custom application). 2) Run the APT Config utility - Start/All Programs/Thorlabs/APT Config/APT Config. 3) From the 'APT Configuration Utility' window, click the 'Stage' tab. Fig. 3.3 APT Configuration Utility - Stage Tab Note The BSC203 APT stepper controller unit can be fitted with up to three stepper motor drive cards. Each card behaves as a discrete unit with its own GUI control panel. 18 HA0278T Rev F Aug 2014 Chapter 3
4) In the Motor field, select the serial number of the drive card to be configured. The Channel field defaults to 1 and the Channel 2 option is greyed out. 5) In the Stage field, select your actuator type from the list displayed (e.g. HS NanoMax 300 X Axis). 6) Click the 'Add Stage Association' button. 7) The server reads in the stage and controller information on start up. Shut down the APTConfig utility and proceed to Section 3.7. to verify the software operation. See the APT Config utility on line help for further information. 3.7 Verifying Software Operation 3.7.1 Initial Setup The APT Software should be installed (Section 3.1.) and the stage association performed (Section 3.6.) before software operation can be verified. 1) Run the APTUser utility and check that the Graphical User Interface (GUI) panel appears and is active. Fig. 3.4 Gui panel showing jog and ident buttons Caution The following items relate to the single channel Drive Cards fitted to the controller, and not the parent 3-channel controller housing. Note To use the increased resolution and velocity funcitionality offered by these controllers, the stage types prefixed by HS (e.g. HS NanoMax 300 X Axis) must be selected. Selecting a stage/actuator type without the HS prefix will result in reduced velocity and resolution. 19 Two-, and Three-Channel Stepper Motor Controller 2) Check that the actuator type and serial number associated in Section 3.6. are displayed in the GUI panel. 3) Click the Ident button. The associated channel LED on the front panel of the controller flashes. This is useful in multi-channel systems for identifying which channel is associated with which GUI. 4) Click the jog buttons on the GUI panel and check that the motor or axis connected to the controller moves. The position display for the associated GUI should increment and decrement accordingly. Follow the tutorial steps described in Chapter for further verification of operation. Note The 'APT Config' utility can be used to set up simulated hardware configurations and place the APT Server into simulator mode. In this way it is possible to create any number and type of simulated (virtual) hardware units in order to emulate a set of real hardware. This is a particularly useful feature, designed as an aid to application program development and testing. Any number of 'virtual' control units are combined to build a model of the real system, which can then be used to test the application software offline. If using real hardware, ensure that Simulator Mode is disabled. If using a simulated setup, enable Simulator Mode and set up a Simulated Configuration - see Section 4.11. or the APTConfig helpfile for detailed instructions. 20 Chapter 4 Operation - Tutorial 4.1 Introduction The following brief tutorial guides the user through a typical series of moves and parameter adjustments performed using the PC based APT software. It assumes that the unit is electrically connected to the stage, and that the APT Software is already installed - see Section 3.1. For illustration purposes, it also assumes that a NanoMax300 is connected to the Motor connector on the rear panel. 4.2 Using the APT User Utility The APT User.exe application allows the user to interact with any number of APT hardware control units connected to the PC USB Bus (or simulated via the APTConfig utility). This program allows multiple graphical instrument panels to be displayed so that multiple APT units can be controlled. All basic operating parameters can be set through this program, and all basic operations (such as motor moves) can be initiated. Hardware configurations and parameter settings can be saved to a file, which simplifies system set up whenever APT User is run up. Fig. 4.1 Typical APT User Screen 21 Two-, and Three-Channel Stepper Motor Controller 1) Run the APT User program - Start/Programs/Thorlabs/APT User/APT User. Notice how the HS NanoMax 300 X Axis actuator type, selected in Section 3.6. is displayed in the Settings window. See Section 4.12. and Section 5.3. for further details on the parameter values shown in the Settings display. 4.3 Homing Motors Homing the motor moves the actuator to the home limit switch and resets the internal position counter to zero. The limit switch provides a fixed datum that can be found after the system has been powered up. Fig. 4.2 Motor Controller Software GUI 1) Click the Home button. Notice that the led in the button lights to indicate that homing is in progress and the displayed position for both channels counts down to 000.000, i.e the home position. 2) When homing is complete, the Homed LED is lit as shown above. See Appendix F , Section F.2.2. for background information on the home position. Note The channel functionality of the BSC203 motor controller is accessed via a single channel GUI panel, one panel for each motor drive card fitted. 22 HA0278T Rev F Aug 2014 Chapter 4 4.4 Moving to an Absolute Position Absolute moves are measured in real world units (e.g. millimetres), relative to the Home position. 1) Click the position display. Fig. 4.3 Absolute Position Popup Window 2) Enter 3.0 into the pop up window 3) Click OK. Notice that the position display counts up to 003.000 to indicate a move to the absolute position 3.00mm. 23 Two-, and Three-Channel Stepper Motor Controller 4.5 Changing Motor Parameters Moves are performed using a trapezoidal velocity profile (see Appendix F , Section F.1.3.). The velocity settings relate to the maximum velocity at which a move is performed, and the acceleration at which the motor speeds up from zero to maximum velocity. 1) On the GUI panel, click the Settings button (bottom right hand corner of the display) to display the Settings panel. Fig. 4.4 Settings Panel - Move/Jogs Tab 2) Select the Move/Jogs tab as shown in Fig. 4.4. 3) In the Moves field, change the parameters as follows: Max. Vel - 2.5 Accn/Dec - 0.5 4) Click OK to save the settings and close the window. 5) Any further moves initiated on channel 1 will now be performed at a maximum velocity of 2.5mm per second, with an acceleration of 0.5mm/sec/sec. Note In current versions of software, the Min Vel parameter is locked at zero and cannot be adjusted. 24 HA0278T Rev F Aug 2014 Chapter 4 4.6 Jogging During PC operation, the motor actuators are jogged using the GUI panel arrow keys. There are two jogging modes available, Single Step and Continuous. In Single Step mode, the motor moves by the step size specified in the Step Distance parameter. If the jog key is held down, single step jogging is repeated until the button is released - see Fig. 4.5. In Continuous mode, the motor actuator will accelerate and move at the jog velocity while the button is held down. 1) On the GUI panel, click the Settings button to display the Settings panel. Fig. 4.5 Settings Panel - Move/Jogs Tab 2) Select the Move/Jogs tab as shown in Fig. 4.5. 3) In the Jogs field, enter parameters as follows: Max. Vel - 1 Accn/Dec - 2 Jogging - Single Step Stopping - Profiled Step Distance - 0.5 4) Click OK to save the settings and close the window. 5) Click the Jog Arrows on the GUI panel to jog the motor. Notice that the position display increments 0.5 every time the button is clicked. Note In current versions of software, the Min Vel parameter is locked at zero and cannot be adjusted. 25 Two-, and Three-Channel Stepper Motor Controller 4.7 Graphical Control Of Motor Positions (Point and Move) The GUI panel display can be changed to a graphical display, showing the position of the motor channel(s). Moves to absolute positions can then be initiated by positioning the mouse within the display and clicking. To change the panel view to graphical view, right click in the screen and select Graphical View. Fig. 4.6 Motor GUI Panel - Graphical View Consider the display shown above for a Stepper Motor Drive Card fitted to a BSC203 APT stepper controller unit. The right hand display shows the channel and motor unit parameters; i.e. controller unit type and serial number, associated stage and actuator type, minimum and maximum positions, current position, units per grid division and cursor position. All units are displayed in real world units, either millimetres or degrees. The left hand display shows a circle, which represents the current position of the motor associated with the specified controller (absolute position data is displayed in the 'Chan Pos' field). The vertical divisions relate to the travel of the stage/actuator associated with the controller (the stage/actuator is selected in the APT Config utility). For example, the screen shot above shows the parameters for a 4 mm travel NanoMax 3-axis stage. The graph shows 8 divisions in the X axis, which relates to 0.5 mm of travel per division (4.0 mm in total). Note The channel functionality of the BSC203 motor controller is accessed via a single channel GUI panel, one panel for each motor drive card fitted. The Channel 2 parameters are greyed out. 26 HA0278T Rev F Aug 2014 Chapter 4 The graphical panel has two modes of operation, Jog and Move, which are selected by clicking the buttons at the bottom right of the screen. Move Mode When Move is selected, the motors move to an absolute position which corresponds to the position of the cursor within the screen. To specify a move: 1) Position the mouse within the window. For reference, the absolute motor position values associated with the mouse position is displayed in the 'Cursor Position field. 2) Click the left hand mouse button to initiate the move. Jog Mode When Jogging mode is selected, the motors are jogged each time the left mouse button is clicked. The Jog direction corresponds to the position of the cursor relative to the circle (current motor position), e.g. if the cursor is to the left of the circle the motor will jog left. The Jog Step size is that selected in the Settings panel - see Section 5.3. Stop To stop the move at any time, click the Stop button. Returning to Panel View To return to panel view, right click in the graphical panel and select Panel View. 27 Two-, and Three-Channel Stepper Motor Controller 4.8 Setting Move Sequences This section explains how to set move sequences, allowing several positions to be visited without user intervention. For details on moving to absolute positions initiated by a mouse click see Section 4.11. 1) From the Motor GUI Panel, select 'Move Sequencer' tab to display the Move Sequencer window. Fig. 4.7 Move Sequencer Window 2) Right click, in the move data field to display the pop up menu. Fig. 4.8 Move Sequencer Pop Up Menu 28 HA0278T Rev F Aug 2014 Chapter 4 3) Select 'New' to display the 'Move Editor' panel. Fig. 4.9 Move Editor Window Move data is entered/displayed as follows: Dist/Pos: - the distance to move from the current position (if 'Relative' is selected) or the position to move to (if 'Absolute' is selected). Dwell Time: - after the move is performed, the system can be set to wait for a specified time before performing the next move in the sequence. The Dwell time is the time to wait (in milliseconds). Return - if checked, the system will move to the position specified in the Dist/Pos field, wait for the specified Dwell time, and then return to the original position. Min Vel: Acc: and Max Vel: - the velocity profile parameters for the move. The motor accelerates at the rate set in the Acc field up to the speed set in the Max Vel field. As the destination approaches, the motor decelerates again to ensure that there is no overshoot of the position. Note In current versions of software, the Min Vel parameter is locked at zero and cannot be adjusted. 29 Two-, and Three-Channel Stepper Motor Controller 4) Enter the required move data into the Move Editor and click OK. The move data is displayed in the main window as shown below. Fig. 4.10 Main Window with Move Data 5) Repeat step 4 as necessary to build a sequence of moves. Move data can be copied, deleted, cut/pasted and edited by right clicking the data line(s) and selecting the appropriate option in the pop up menu (shown below). Fig. 4.11 Pop Up Options 6) To run a single line of data, right click the appropriate data and select 'Run' from the pop up menu (shown above). 7) To run the entire sequence, click the 'Run' button (shown below). A Home move can also be performed from this panel by clicking the Home button. Fig. 4.12 Home and Run Buttons 8) To save data to a file, or load data from a previously saved file, click the Save or Load button and browse to the required location. 30 HA0278T Rev F Aug 2014 Chapter 4 4.9 Using A Joystick Console The MJC001 joystick console has been designed to provide intuitive, tactile, manual positioning of the stage. The console features a two axis joystick for XY control. Up to 3 joysticks can be connected to each other, interfacing neatly into a multi-channel control application. 1) Connect the stage to the Controller unit. 2) Connect the joystick console to the HANDSET IN connector of the controller. 3) Switch ON the controller. 4) Wait until the red led on the joystick console and the Channel Enable LED on the controller front panel stops flashing (~3s). Press and hold the High/Low button for 2 seconds to home the stage. When homing is complete, the green LED stops flashing. In order to establish control over a particular axis, the joystick axes must be associated with the corresponding channels of the related controller. This is achieved by setting the joystick ID switch, located on the underside of the joystick console, and the channel ident switches on the rear panel of the BSC controller. The joystick ID switch assigns the selected number to the X axis of the joystick and the next sequential number to the Y axis. The channel ident switches on the controller unit(s) must then be set to match these joystick axis numbers. For example, if the joystick switch is set to '1', then the channel ID switch on the controller must also be set to 1 as shown in Fig. 4.1. If two single channels are being used, the Y-Axis controller unit must be set to 2. Fig. 4.1 ID switch setings Note The default parameter values loaded at the factory should be acceptable for most applications, and in this case, it is not necessary to connect the controller to a PC running the APT software. If these parameter values subsequently require adjustment, this can only be performed by running the APT software - see Section 5.3.4. for more information. Note In order for the controller and joystick to be used without a host PC, the Move/ Jog settings, Stage/Axis settings and the Joystick settings must be persisted (saved) within the BSC20x unit before the following predure is performed. This is done by checking the Persist Settings box on each settings tab - see Section 5.3. for more details. 31 Two-, and Three-Channel Stepper Motor Controller 5) Set the joystick console ID switch and the controller channel ID switches as described in the preceding paragraph. 6) Open the APTConfig utility and ensure that the appropriate HS option is selected for the actuator being driven (e.g. HS 17DRV013). If an option without the HS prefix is seleceted, then the joystick will not function - see Section 3.6. 7) The stage can now be moved using the joystick, GUI panel, or by setting commands to move each axis by relative and absolute amounts see the helpfile supplied with the APT server for more information. 4.10 External Triggering External triggering is facilitated by the Trigger In and Trigger Out pins (pins 4 and 12) of the CONTROL IO connector on the rear panel of the unit. These connectors provide a 5V logic level input and output that can be configured to support triggering from and to external devices - see Section 5.3.3. and Section A.1.3. for further details. 4.11 Creating a Simulated Configuration Using APT Config The 'APT Config' utility can be used to set up simulated hardware configurations and place the APT Server into simulator mode. In this way it is possible to create any number and type of simulated (virtual) hardware units in order to emulate a set of real hardware. This is a particularly useful feature, designed as an aid learning how to use the APT software and as an aid to developing custom software applications offline. Any number of 'virtual' control units can be combined to emulate a collection of physical hardware units For example, an application program can be written, then tested and debugged remotely, before running with the hardware. To create a simulated configuration proceed as follows: 1) Run the APT Config utility - Start/All Programs/Thorlabs/APT/APT Config. Caution Do not set the switches to identical numbers as this may result in lack of joystick control. Also, do not set the channel ID switches to 'E' or 'F' as this is reserved for factory use and testing. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 32 HA0278T Rev F Aug 2014 Chapter 4 2) Click the 'Simulator Configuration' tab. Fig. 4.13 APT Configuration Utility - Simulator Configuration Tab 3) Enter LAB1 in the Configuration Names field. 4) In the 'Simulator' field, check the Enable Simulator Mode box. The name of the most recently used configuration file is displayed in the 'Current Configuration' window. 33 Two-, and Three-Channel Stepper Motor Controller 5) In the Control Unit field, select 3 Ch Stepper Driver (BSC203). 6) Enter a 6 digit serial number. 7) Click the 'Add' button. 8) Repeat items (1) to (7) as required. (A unit can be removed from the configuration by selecting it in the 'Loaded Configuration Details' window and clicking the 'Remove' button or by right clicking it and selecting the 'Remove' option from the pop up window). 9) Enter a name into the 'Configuration Names' field. 10) Click 'Save'. 11) Click 'Set As Current' to use the configuration. Note Each physical APT hardware unit is factory programmed with a unique 8 digit serial number. In order to simulate a set of real hardware the Config utility allows an 8 digit serial number to be associated with each simulated unit. It is good practice when creating simulated configurations for software development purposes to use the same serial numbers as any real hardware units that will be used. Although serial numbers are 8 digits (as displayed in the Load Configuration Details window, the first two digits are added automatically and identify the type of control unit. The prefixed digits relating to the BSC203 stepper controller are: 70xxxxxx - Benchtop APT Three Channel Stepper Motor Controller 90xxxxxx - Single Channel Stepper Motor Drive Card 34 HA0278T Rev F Aug 2014 Chapter 4 4.12 Stage/Axis Tab This tab contains a number of parameters which are related to the physical characteristics of the particular stage or actuator being driven. They need to be set accordingly such that a particular stage is driven properly by the system. Fig. 4.14 Stage/Axis Tab These parameters were set automatically when the HS NanoMax 300 X Axis stage type was selected using the APTConfig utility in Section 3.6. The APT server automatically applied suitable defaults for the parameters on this tab during boot up of any client software such as APTUser. These parameters should not be altered for pre-defined Thorlabs stages and actuators selected using APT Config, as it may adversely affect the performance of the stage. For custom stage types not available using the APT Config utility, the stage details must be entered manually. Individual parameters are described in Section 5.3. 35 Chapter 5 Software Reference 5.1 Introduction This chapter gives an explanation of the parameters and settings accessed from the APT software running on a PC. For information on the methods and properties which can be called via a programming interface, see Appendix E . 5.2 GUI Panel The following screen shot shows the graphical user interface (GUI) (one panel per channel) displayed when accessing the controller using the APTUser utility. Fig. 5.1 Motor Controller Software GUI Note The serial number of the driver card associated with the GUI panel, the APT server version number, and the version number (in brackets) of the embedded software running on the unit, are displayed in the top right hand corner. This information should always be provided when requesting customer support. 36 HA0278T Rev F Aug 2014 Chapter 5 Jog - used to increment or decrement the motor position. When the button is clicked, the motor is driven in the selected direction at the jog velocity one step per click. The step size and jog velocity parameters are set in the 'Settings' panel (see Section 5.3.). Travel - displays the range of travel (in millimeters or degrees) of the motor. Moving - lit when the motor is in motion. Enable - applies power to the motor. With the motor enabled, the associated Channel LED on the front panel is lit. Digital display - shows the position (in millimetres or degrees) of the motor. The motor must be 'Homed' before the display will show a valid position value, (i.e. the displayed position is relative to a physical datum, the limit switch). Home - sends the motor to its 'Home' position - see Section F.2.2. The LED in the button is lit while the motor is homing. Homed - lit when the motor has previously been 'Homed' (since power up). Stop - halts the movement of the motor. Limit switches - the LEDs are lit when the associated limit switch has been activated - see Section F.2.3. for further details on limit switches. Settings display - shows the following user specified settings: Driver - the type of control unit associated with the specified channel. Stage - the stage type and axis associated with the specified channel. Calib File - the calibration file associated with the specified channel. See the APTConfig utility helpfile for more details on assigning and using calibration files. Min/Max V - the minimum velocity at which a move is initiated, and the maximum velocity at which the move is performed. Values are displayed in real world units (mm/ s or degrees/s), and can be set via the 'Settings' panel (see Section 5.3.). Accn - the rate at which the velocity climbs to, and slows from, maximum velocity, displayed in real world units (mm/s/s or degrees/s/s). The acceleration can be set via the 'Settings' panel (see Section 5.3.) and is used in conjunction with the Min/Max velocity settings to determine the velocity profile of a motor move. See Appendix F Section F.1.3. for more information on velocity profiles. Jog Step Size - the size of step (in mm or degrees) taken when the jog signal is initiated. The step size can be set either via the Settings panel or by calling the SetJogStepSize method. Settings button - Displays the 'Settings' panel, which allows the motor drives operating parameters to be entered - see Section 5.3. Ident - when this button is pressed, the LED (on the front panel of the unit) associated with the selected channel will flash for a short period. Active - lit when the unit is operating normally and no error condition exists. Error - lit when a fault condition occurs. 37 Two-, and Three-Channel Stepper Motor Controller 5.3 Settings Panel When the 'Settings' button on the GUI panel is clicked, the 'Settings' window is displayed. This panel allows motor operation parameters such as move/jog velocities, and stage/axis information to be modified. Note that all of these parameters have programmable equivalents accessible through the ActiveX methods and properties on this Control (refer to the Programming Guide in the APTServer helpfile for further details and to Section 2.2.4. for an overview of the APT ActiveX controls). 5.3.1 Moves/Jogs tab Fig. 5.2 Stepper Motor Controller - Move/Jog Settings Moves Moves can be initiated via the GUI panel by entering a position value after clicking on the position display box (see Section 4.4.) or by calling a software function (see the APTServer helpfile). The following settings determine the velocity profile of such moves, and are specified in real world units, millimetres or degrees. Velocity Profile (specified in real world units, millimetres or degrees). MinVel - In current versions of software the Min Vel parameter is locked at zero and cannot be adjusted. MaxVel - the maximum velocity at which to perform a move. Accn/Dec - the rate at which the velocity climbs from zero to maximum, and slows from maximum to zero. Note Under certain velocity parameter and move distance conditions, the maximum velocity may never be reached (i.e. the move comprises an acceleration and deceleration phase only). 38 HA0278T Rev F Aug 2014 Chapter 5 Jogs Jogs are initiated by using the Jog keys on the GUI panel (see Section 4.6.), or via a jog handset connected to the unput logic pins exposed on the rear panel Control IO connector (see Appendix A ). Velocity Profile (specified in real world units, millimetres or degrees) MaxVel - the maximum velocity at which to perform a jog Accn/Dec - the rate at which the velocity climbs from minimum to maximum, and slows from maximum to minimum. Note. The Minimum Velocity is locked at zero and cannot be adjusted. Operating Modes Jogging - The way in which the motor moves when a jog command is received (i.e. handset button pressed or GUI panel button clicked). There are two jogging modes available, Single Step and Continuous. In Single Step mode, the motor moves by the step size specified in the Step Distance parameter. If the jog key is held down, single step jogging is repeated until the button is released - see Fig. 5.3. In Continuous mode, the motor actuator will accelerate and move at the jog velocity while the button is held down.. Fig. 5.3 Jog Modes Single Step - the motor moves by the step size specified in the Step Distance parameter. Continuous - the motor continues to move until the jog signal is removed (i.e. jog button is released). Stopping - the way in which the jog motion stops when the demand is removed. Immediate - the motor stops quickly, in a non-profiled manner Profiled - the motor stops in a profiled manner using the jog Velocity Profile parameters set above. 39 Two-, and Three-Channel Stepper Motor Controller Step Distance - The distance to move when a jog command is initiated. The step size is specified in real world units (mm or degrees dependent upon the stage). Backlash Correction - The system compensates for lead screw backlash during reverse direction moves, by moving passed the demanded position by a specified amount, and then reversing. This ensures that positions are always approached in a forward direction. The Backlash Correction Distance is specified in real world units (millimeters or degrees). To remove backlash correction, this value should be set to zero. Position Profiling To prevent the motor from stalling, it must be ramped up gradually to its maximum velocity. Certain limits to velocity and acceleration result from the torque and speed limits of the motor, and the inertia and friction of the parts it drives. The system incorporates a trajectory generator, which performs calculations to determine the instantaneous position, velocity and acceleration of each axis at any given moment. During a motion profile, these values will change continuously. Once the move is complete, these parameters will then remain unchanged until the next move begins. The specific move profile created by the system depends on several factors, such as the profile mode and profile parameters presently selected, and other conditions such as whether a motion stop has been requested. Bow Index This field is used to set the profile mode to either Trapezoidal or S-curve. A Bow Index of 0 selects a trapezoidal profile. An index value of 1 to 18 selects an S-curve profile. In either case, the velocity and acceleration of the profile are specified using the Velocity Profile parameters on the Moves/Jogs tab. The Trapezoidal profile is a standard, symmetrical acceleration/deceleration motion curve, in which the start velocity is always zero. This profile is selected when the Bow Index field is set to 0. In a typical trapezoidal velocity profile, (see Fig. 5.4.), the stage is ramped at acceleration a to a maximum velocity v. As the destination is approached, the stage is decelerated at a so that the final position is approached slowly in a controlled manner. Fig. 5.4 Graph of a trapezoidal velocity profile velocity maximum velocity (v) time acceleration (slope) a 40 HA0278T Rev F Aug 2014 Chapter 5 The S-curve profile is a trapezoidal curve with an additional 'Bow Index' parameter, which limits the rate of change of acceleration and smooths out the contours of the motion profile. The Bow Value is applied in mm/s 3 and is derived from the Bow Index field as follows: Bow Value = 2 (Bow Index -1) within the range 1 to 262144 (Bow Index 1 to 18). In this profile mode, the acceleration increases gradually from 0 to the specified acceleration value, then decreases at the same rate until it reaches 0 again at the specified velocity. The same sequence in reverse brings the axis to a stop at the programmed destination position. Example Fig. 5.5 Typical S-Curve Profile The figure above shows a typical S-curve profile. In segment (1), the S-curve profile drives the axis at the specified Bow Index (BI) until the maximum acceleration (A) is reached. The axis continues to accelerate linearly (Bow Index = 0) through segment (2). The profile then applies the negative value of Bow Index to reduce the acceleration to 0 during segment (3). The axis is now at the maximum velocity (V), at which it continues through segment (4). The profile then decelerates in a similar manner to the acceleration phase, using the Bow Index to reach the maximum deceleration (D) and then bring the axis to a stop at the destination. Note The higher the Bow Index, then the shorter the BI phases of the curve, and the steeper the acceleration and deceleration phases. High values of Bow Index may cause a move to overshoot. BI BI A D -BI -BI V V e l o c i t y 1 2 3 4 5 6 7 A - acceleration D - deceleration V - velocity BI - bow index 41 Two-, and Three-Channel Stepper Motor Controller Persist Settings to Hardware - Many of the parameters that can be set for the BSC20x series drivers can be stored (persisted) within the unit itself, such that when the unit is next powered up these settings are applied automatically. This is particularly important when the driver is being used manually via a joystick, in the absence of a PC and USB link. The Move and Jog parameters described previously are good examples of settings that can be altered and then persisted in the driver for later use. To save the settings to hardware, check the Persist Settings to Hardware checkbox before clicking the OK button. 5.3.2 Stage/Axis tab Fig. 5.6 Stepper Motor Controller - Stage/Axis Settings Note This tab contains a number of parameters which are related to the physical characteristics of the particular stage being driven. They need to be set accordingly such that a particular stage is driven properly by the system. For Thorlabs stages, the APT Config utility can be used to associate a specific stage and axis type with the motor channel (refer to the APT Config helpfile for further details on how to associate a stage and axis). Once this association has been made, the APT server will automatically apply suitable defaults for the parameters on this tab during boot up of the software. These parameters should not be altered for pre-defined Thorlabs stages selected using APT Config, as it may adversely affect the performance of the stage. For custom stage types not available using the APT Config utility, the stage details must be entered manually. Individual parameters are described in the following paragraphs. 42 HA0278T Rev F Aug 2014 Chapter 5 Stage and Axis Type - For Thorlabs stages, the stage type is displayed automatically once the axis has been associated using the APTConfig utility. For third party stages, the display shows Unknown. Min Pos - the stage/actuator minimum position (typically zero). Max Pos - the stage/actuator maximum position. Pitch - the pitch of the motor lead screw (i.e. the distance (in millimetres or degrees) travelled per revolution of the leadscrew). Units - the real world positioning units (mm or degrees). Homing When homing, a stage typically moves in the reverse direction, (i.e. towards the reverse limit switch). The following settings allow support for stages with both Forward and Reverse limits. Direction - the direction sense to move when homing, either Forward or Reverse. Limit Switch - The hardware limit switch associated with the home position, either Forward HW or Reverse HW. Zero Offset - the distance offset (in mm or degrees) from the limit switch to the Home position. Velocity - the maximum velocity at which the motors move when Homing. For further information on the home position, see Section F.2.2. Hardware Limit Switches The operation of the limit switches is inherent in the design of the associated stage or actuator. The following parameters notify the system to the action of the switches Caution Extreme care must be taken when modifying the stage related settings that follow. Some settings are self consistent with respect to each other, and illegal combinations of settings can result in incorrect operation of the physical motor/stage combination being driven. Consult Thorlabs for advice on settings for stage/actuator types that are not selectable via the APTConfig utility. Note Typically, the following two parameters are set the same, i.e. both Forward or both Reverse. Note The minimum velocity and acceleration/deceleration parameters for a home move are taken from the existing move velocity profile parameters. 43 Two-, and Three-Channel Stepper Motor Controller when contact is made. Select Rev Switch or Fwd Switch as required, then select the relevant operation. Switch Makes - The switch closes on contact Switch Breaks - The switch opens on contact Ignore/Absent - The switch is missing, or should be ignored. Motor These parameters are used to set the 'resolution' characteristics of the stepper motor connected to the selected channel. The resolution of the motor, combined with other characteristics (such as lead screw pitch) of the associated actuator or stage, determines the overall resolution. Steps Per Rev - The number of full steps per revolution of the stepper motor (minimum '1', maximum '10000'). Gearbox Ratio - The ratio of the gearbox. For example, if the gearbox has a reduction ratio of X:1 (i.e. every 1 turn at the output of the gearbox requires X turns of the motor shaft) then the Gearbox Ratio value is set to X. (minimum '1', maximum '1000'). Note The Gearbox Ratio parameter is applicable only to motors fitted with a gearbox. Note The Steps Per Rev and Gearbox Ratio parameters, together with the Pitch and Units parameters are used to calculate the calibration factor for use when converting real world units to microsteps. However, the Steps Per Rev parameter is entered as full steps, not microsteps. The system automatically applies a factor of 128 microsteps per full step. The stepper motors used on the majority of Thorlabs stages/actuators have 200 full steps per rev and no gearbox fitted. For these motors the Steps Per Rev and Gearbox Ratio parameters have values of 200 and 1 respectively. The correct default values for Steps Per Rev and Gearbox Ratio are applied automatically when the APTConfig.exe utility is used to associate a specific stage or actuator type with a motor channel. See the APTConfig helpfile and the tutorial Section 3.6. for more details. 44 HA0278T Rev F Aug 2014 Chapter 5 Persist Settings to Hardware - Many of the parameters that can be set for the BSC20x series drivers can be stored (persisted) within the unit itself, such that when the unit is next powered up these settings are applied automatically. This is particularly important when the driver is being used manually via a joystick, in the absence of a PC and USB link. The Min Pos, Max Pos, and Velocity parameters described previously are good examples of settings that can be altered and then persisted in the driver for later use. To save the settings to hardware, check the Persist Settings to Hardware checkbox before clicking the OK button. 5.3.3 Advanced Tab Fig. 5.7 Stepper Motor Controller - Advanced Settings Triggering It is possible to configure a particular controller to respond to trigger inputs, generate trigger outputs or both respond to and generate a trigger output. When a trigger input is received, the unit can be set to initiate a move (relative, absolute or home). Similarly the unit can be set to generate a trigger output signal when instructed to move via a software (USB) command. For those units configured for both input and output triggering, a move can be initiated via a trigger input while at the same time, a trigger output can be generated to initiate a move on another unit. Note The move parameters for triggered moves can only be set via software method calls in APTServer. Triggered moves cannot be set up via the GUI panel. 45 Two-, and Three-Channel Stepper Motor Controller The trigger settings can be used to configure multiple units in a master - slave set up, thereby allowing multiple channels of motion to be synchronized. Multiple moves can then be initiated via a single software or hardware trigger command. Mode The Mode parameter sets the trigger mode for the associated channel. Disabled - triggering operation is disabled Trig In - a move (specified using the Move Type parameter below) is initiated on the specified channel when a trigger input signal (i.e. rising edge) is received on the Trig In pin of the rear panel CONTROL IO D-type connector - see Section A.1. for pin out details. Trig In/Out - As for Trig In, but now a trigger output signal will also be generated on the Trig Output pin when the move begins - see Section A.1. for pin out details. Trig Out - A trigger output signal is generated on the Trig Out pin when a move (relative, absolute or home) is initiated via software (either through the GUI panel or ActiveX method call). Move Type The Move Type parameter determines the type of move to be initiated on the associated channel when a trigger input signal is detected on the Trig In or Trig Out connector. Relative - triggered relative move. Relative move distance and velocity profile parameters can be set prior to triggering using the SetRelMoveDist and SetVelParams methods respectively. Absolute - triggered absolute move. Absolute move position and velocity profile parameters can be set prior to triggering using the SetAbsMovePos and SetVelParams methods respectively. Home - triggered home sequence. Homing parameters can be set prior to triggering using the SetHomeParams method. 46 HA0278T Rev F Aug 2014 Chapter 5 For example, consider the following diagram: Fig. 5.8 Typical Triggering Set Up When the move command is received via the USB link, the motor associated with unit A starts to move by the specified relative distance. Unit A also sends a trigger signal to Unit B. Unit B has been set to 'Trig In', so on receipt of the trigger from unit A, the associated motor also starts to move. Persist Settings to Hardware - The Triggering parameters described earlier can be stored (persisted) within the unit itself, such that when the unit is next powered up these settings are applied automatically. This is particularly important when the driver is being used manually via a joystick, in the absence of a PC and USB link. To save the settings to hardware, check the Persist Settings to Hardware checkbox before clicking the OK button. move command Motor 1 move motor 2 move motor unit B motor unit A Triggering Parameter setup Motor Unit A (Master) Trigger Mode - Trig Out Move Type - Relative Motor Unit B (Slave) Trigger Mode - Trig In Move Type - Relative Initiate move on Motor Unit A via software or GUI, CONTROL IO Pin 12 (Trigger Out) CONTROL IO Pin 4 (Trigger In) C O N T R O L
I O M O T O R
D R I V E C O N T R O L
I O M O T O R
D R I V E C O N T R O L
I O M O T O R
D R I V E C O N T R O L
I O M O T O R
D R I V E C O N T R O L
I O M O T O R
D R I V E C O N T R O L
I O M O T O R
D R I V E 47 Two-, and Three-Channel Stepper Motor Controller 5.3.4 Joystick Tab Fig. 5.9 Joystick Settings If the optional Thorlabs joystick console is being used (MJC001) the following parameters are used to set the velocity and acceleration limits and the direction sense of any moves initiated from the joystick.- see Section 4.9. for more details on joystick use. Low Gear Max Vel The max velocity of a move when low gear mode is selected. High Gear Max Vel The max velocity of a move when high gear mode is selected. Low Gear Accn The acceleration of a move when low gear mode is selected. High Gear Accn The acceleration of a move when high gear mode is selected. Direction Sense The actual direction sense of any joystick initiated moves is dependent upon the application. This parameter can be used to reverse the sense of direction for a particular application and is useful when matching joystick direction sense to actual stage direction sense. Persist Settings to Hardware - The Joystick Parameters described above can be stored (persisted) within the unit itself, such that when the unit is next powered up these settings are applied automatically. This is particularly important when the driver is being used manually via a joystick, in the absence of a PC and USB link. To save the settings to hardware, check the Persist Settings to Hardware checkbox before clicking the OK button. Note Joystick controlled moves always use a trapezoidal velocity profile. 48 Appendix A Rear Panel Connector Pinout Details A.1 Rear Panel CONTROL IO Connector The CONTROL I/O is a 15-Pin D-Type, Female connector that exposes a number of electrical signals useful for external control. It is possible to configure a particular controller to respond to trigger inputs, generate trigger outputs or both respond to and generate a trigger output - see Section 5.3.3. Motor jogging lines can be used to jog the motor in both forward and reverse directions from a remote handset (Jogging parameters (e.g. jog distance) are set via the GUI panel - see Section 5.3.1.). The pin functions are detailed in Fig. A.1. Fig. A.1 MOTOR I/O connector pin identification Pin Description Return Pin Description Return 1 User 5V I/O 9 9 User 0V 2 * Jog forwards 9 10 * Jog backwards 9 3 Not Used 9 11 ** Analog In 9 4 Tigger In 12 Trigger Out 9 5 User 0V 13 Not Used 6 RS232 TX 14 RS232 RX 6 7 Digital (User) In 15 Digital (User) Out 9 8 Keyed Pin Notes * Jog inputs must be short circuit to User 0V (pin 9) in order to function. ** Analog In is 0 to 5V wrt 0V (pin 9). The input can be read by calling the LLGetADCInputs method in the APT software - see the APTServer helpfile for more details. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 49 Two-, and Three-Channel Stepper Motor Controller A.1.1 Digital/User Outputs All digital outputs are of the open-collector type, with a 330 Ohm series resistor. When the output is set to a logic zero (which is also the default state), it behaves as open circuit. When it is a logic one, it behaves as a 330 Ohm resistor connected to ground. Fig. A.2 Digital Output Schematic In some applications, the outputs may be required to control external equipment that has optocoupler type inputs (such as PLCs). The digital outputs used here can be used to directly drive most optocouplers and the +5V supply available on pins 14 and 15 can be used to provide power for the optocouplers. Fig. A.3 Application Example: Connection to Optocoupler Inputs These outputs can also be used to interface to external logic circuitry (a pull-up resistor may be needed if the external logic does not contain it) or control other types of inputs. Please see the LLSetGetDigOPs method in the APTServer helpfile for details on how to control these logic IO. Caution The voltage that external equipment applies to the digital outputs must be within the range 0 V and +5 V DC, or damage to the outputs may occur. Output 330R 0V 330R gnd +5V Optocoupler Appendix A 50 HA0278T Rev F Aug 2014 A.1.2 Digital/User Inputs The digital inputs used in the controller are of the standard CMOS logic gate type with TTL compatible input levels and a built-in pull-up resistor (10 kOhm to +5V). They can be connected directly to mechanical switches, open-collector type outputs or most type of logic outputs. Fig. A.4 Digital Input Schematic (protection circuitry not shown) When connected to a switch, the inputs will read as logic LOW if the switch is open circuit and HIGH if the switch is closed. When connected to a logic output, or any other voltage source, the input is guaranteed to read LOW if the voltage is above 2.4V and HIGH when the output is below 0.8 V. Please see the LLGetStatusBits method in the APTServer helpfile for details on how to control these logic IO. A.1.3 Trigger Output The trigger output is different from the rest of the digital outputs in that it is a 5V CMOS logic gate with a series 1 kOhm resistor for protection. It behaves as +5V voltage source with 1 kOhm in series when the outputs is a logic HIGH, and 1 kOhm to ground when it is a logic LOW. The 1 kOhm resistor limits the current to 5 mA maximum for any load as long as the output is not connected to voltages outside the 0 V to +5V range. Fig. A.5 Trigger Output Schematic Caution The voltage applied to the digital inputs must be within the range 0 V to +7V DC, or damage to the inputs may occur. 10K gnd 5V IN 1K Gnd 5V Trigger Out 51 Two-, and Three-Channel Stepper Motor Controller As this output is actively driven, it can be connected, for example, to an oscilloscope without a need for an external pull-up resistor. It can also be used to drive most optocouplers. A.1.4 Trigger Input The Trigger inputs are ekectrically identical to the digital inputs (i.e. a standard CMOS logic gate type with TTL compatible input levels and a built-in pull-up resistor, 10 kOhm to +5V). They can be connected directly to mechanical switches, open- collector type outputs or most type of logic outputs. Fig. A.6 Trigger Input Schematic (protection circuitry not shown) When connected to a switch, the inputs will read as logic LOW if the switch is open circuit and HIGH if the switch is closed. When connected to a logic output, or any other voltage source, the input is guaranteed to read LOW if the voltage is above 2.4V and HIGH when the output is below 0.8 V. A.1.5 +5 Volt Supply A +5 V, 250 mA supply is provided for interfacing to external circuits that require a power source. Caution The voltage applied to the trigger inputs must be within the range 0 V to +7V DC, or damage to the outputs may occur. Caution Do not exceed the 250 mA maximum output current. For applications requiring higher currents an external power supply must be used. 10K gnd 5V IN Appendix A 52 HA0278T Rev F Aug 2014 A.2 Rear Panel HANDSET Connector Provides connection to the MJC001 joystick. The pin functions are detailed in in Fig. A.7 Fig. A.7 HANDSET Connector Pin Identification A.3 Rear Panel MOTOR DRIVE Connectors The MOTOR DRIVE is a 15-Pin D-Type, Female connector that provides connection to the motors. The pin functions are detailed in Fig. A.8. In each case the signal must be referenced to the indicated return pin in order to be true. Fig. A.8 DRIVE CHANNEL Connector Pin Identification Pin Description 1 RX (controller input) 2 Ground 3 Ground 4 +5V , 100 mA Supply for Joystick 5 TX (controller output) 6 Ground Pin Description Return Pin Description Return 1 Encoder A +ve 9 CW Limit Stwitch 2 Encoder A -ve 10 CCW Limit Switch 3 Encoder B +ve 11 0V User 4 Encoder B -ve 12 For Future Use 5 5V User 13 For Future Use 6 For Future Use 14 Motor Phase B + 7 Motor Phase B - 15 Motor Phase A + 8 Motor Phase A - 1 2 3 5 4 6 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 53 Two-, and Three-Channel Stepper Motor Controller A.4 Rear Panel INTERCONNECT Connector (RS232) A.4.1 Pin Identification The INTERCONNECT terminal is a male, 9 pin D-Type that exposes electrical signals for use in RS232 communications. This allows control of the device using the low level communications protocol, or other software environments. A 9-way D-type female to female crossover (null modem) cable is required for connecting to the host PC. The pin functions are detailed in Fig. A.9 . Fig. A.9 INTERCONNECT Connector Pin Identification Pin Description 1 Not Connected 2 RX (controller input) 3 TX (controller output) 4 Not Connected 5 Ground 6 Not Connected 7 Not Connected 8 Not Connected 9 Not Connected Note It is not possible to use the USB Comms and the Serial interface at the same time. If this is the attempted, whichever port is used first will dominate and the other will be ignored. 1 2 3 4 5 6 7 8 9 54 Appendix B Using the RS232 or Virtual Comm Port When using the low level communications protocol messages to develop client applications outside of the APT software, communication with the device is facilitated by using the RS232 comms pins on the rear panel INTERCONNECT connector - see Section A.4. Alternatively, a virtual comms port can be configured as follows: 1) Open the device manager by selecting Start/Control Panel/Device Manager/ 55 Two-, and Three-Channel Stepper Motor Controller 2) Click USB Serial Bus Controllers and select the APT USB Device to be configured, then right click and select Properties. 3) The USB Device Properties window is displayed. Appendix B 56 HA0278T Rev F Aug 2014 4) Select the Advanced tab, and check the Load VCP box. 5) Click OK, then power cycle the device being configured. 6) In the device manager, click Ports (COM & LPT), and note the APT USB Device Serial Port COM port number (e.g. COM3). This COM port can then be used by the client application to communicate with the device using the low level protocol messages. 57 Appendix C Preventive Maintenance C.1 Safety Testing PAT testing in accordance with local regulations, should be performed on a regular basis, (typically annually for an instrument in daily use). C.2 Cleaning Shock Warning The equipment contains no user servicable parts. There is a risk of severe electrical shock if the equipment is operated with the covers removed. Only personnel authorized by Thorlabs Ltd and trained in the maintenance of this equipment should remove its covers or attempt any repairs or adjustments. Maintenance is limited to safety testing and cleaning as described in the following sections. Caution The instrument contains a power supply filter. Insulation testing of the power supply connector should be performed using a DC voltage. Warning Disconnect the power supply before cleaning the unit. Never allow water to get inside the case. Do not saturate the unit. Do not use any type of abrasive pad, scouring powder or solvent, e.g. alcohol or benzene. 58 Appendix D Specifications and Associated Parts D.1 Specifications Parameter Value Input/Output Motor Drive (15-Pin D-type Female) 2-Phase Bipolar Motor Drive Output Differential Quadrature Encoder Interface Forward, Reverse Limit Switch Inputs Control IO (15-Pin D-type Female) Jog Forward Jog Back User Outputs/Inputs Single - ended analog input (0-10 Volt) Trigger In/Out Resolution 2048 Microsteps per Full Step 200 Step Motor - 409600 Microsteps per Rev Motor Power Up to 48 V/50 W (peak) Input Power Requirements Voltage 85-264 VAC Power 200 W Fuse 3.15 A Motor speeds Up to 3000 RPM (for 200 full step motor) Encoder feedback bandwidth 500,000 counts/sec General Housing Dimensions (W x D x H) 240 x 360 x 133 mm (9.5 x 14.2 x 5.2 in.) Instrument Weight 6.7 kg (14.75 lbs) Compatible Motors Peak Powers 5 to 50 W Average Power 25 W Maximum Step Angle Range 20 to 1.8 Coil Resistance (nominal) 4 to 15 Coil Inductance (nominal) 4 to 15 mH Rated Phase Currents (nominal) 100 mA to 1 A 59 Two-, and Three-Channel Stepper Motor Controller D.2 Associated Products Product Name Part Number Stepper Motor Actuator, 4mm travel DRV001 Stepper Motor Actuator, 25mm (1) travel, trapezoidal leadscrew DRV013 Stepper Motor Actuator, 50mm (2) travel, trapezoidal leadscrew DRV014 Stepper Motor Drive Cable (1.25 Metres) PAA 610 Stepper Motor Drive Cable (3.0 Metres) PAA 611 60 Appendix E Motor Control Method Summary The 'Motor' ActiveX Control provides the functionality required for a client application to control one or more of the APT series of motor controller units. To specify the particular controller being addressed, every unit is factory programmed with a unique 8-digit serial number. This serial number is key to the operation of the APT Server software and is used by the Server to enumerate and communicate independently with multiple hardware units connected on the same USB bus. The serial number must be specified using the HWSerialNum property before an ActiveX control instance can communicate with the hardware unit. This can be done at design time or at run time. Note that the appearance of the ActiveX Control GUI (graphical user interface) will change to the required format when the serial number has been entered. The Methods and Properties of the Motor ActiveX Control can be used to perform activities such as homing stages, absolute and relative moves, and changing velocity profile settings. A brief summary of ech method and property is given below, for more detailed information and individual parameter descriptiond please see the on-line help file supplied with the APT server. Methods CalibrateEnc Calibrates encoder equipped stage. DeleteParamSet Deletes stored settings for specific controller. DisableHWChannel Disables the drive output. DoEvents Allows client application to process other activity. EnableHWChannel Enables the drive output. GetAbsMovePos Gets the absolute move position. GetAbsMovePos_AbsPos Gets the absolute move position (returned by value). GetBLashDist Gets the backlash distance. GetBLashDist_BLashDist Gets the backlash distance (returned by value). GetCtrlStarted Gets the ActiveX Control started flag. GetDispMode Gets the GUI display mode. GetEncCalibTableParams Gets the encoder calibration table parameters for encoder equipped stages. GetEncPosControlParams Gets the encoder position control parameters for encoder equipped stages. GetEncPosCorrectParams Gets the encoder position correction parameters for encoder equipped stages. GetHomeParams Gets the homing sequence parameters. 61 Two-, and Three-Channel Stepper Motor Controller GetHomeParams_HomeVel Gets the homing velocity parameter (returned by value). GetHomeParams_ZeroOffset Gets the homing zero offset parameter (returned by value). GetHWCommsOK Gets the hardware communications OK flag. GetHWLimSwitches Gets the limit switch configuration settings. GetJogMode Gets the jogging button operating modes. GetJogMode_Mode Get the jogging button operating mode (returned by value). GetJogMode_StopMode Gets the jogging button stopping mode (returned by value). GetJogStepSize Gets the jogging step size. GetJogStepSize_StepSize Gets the jogging step size (returned by value). GetJogVelParams Gets the jogging velocity profile parameters. GetJogVelParams_Accn Gets the jogging acceleration parameter (returned by value). GetJogVelParams_MaxVel Gets the jogging maximum velocity parameter (returned by value). GetMotorParams Gets the motor gearing parameters. GetParentHWInfo Gets the identification information of the host controller. GetPhaseCurrents Gets the coil phase currents. GetPosition Gets the current motor position. GetPosition_Position Gets the current motor position (returned by value). GetPositionEx Gets the current motor position. GetPositionEx_UncalibPosition Gets the current uncalibrated motor position (returned by value). GetPositionOffset Gets the motor position offset. GetRelMoveDist Gets the relative move distance. GetRelMoveDist_RelDist Gets the relative move distance (returned by reference). GetStageAxis Gets the stage type information associated with the motor under control. GetStageAxisInfo Gets the stage axis parameters. GetStageAxisInfo_MaxPos Gets the stage maximum position (returned by value). GetStageAxisInfo_MinPos Gets the stage minimum position (returned by value). Appendix E 62 HA0278T Rev F Aug 2014 GetStatusBits_Bits Gets the controller status bits encoded in 32 bit integer (returned by value). GetTriggerParams Gets the move triggering parameters. GetVelParamLimits Gets the maximum velocity profile parameter limits. GetVelParams Gets the velocity profile parameters. GetVelParams_Accn Gets the move acceleration (returned by value). GetVelParams_MaxVel Gets the move maximum velocity (returned by value). Identify Identifies the controller by flashing unit LEDs. LLGetDigIPs Gets digital input states encoded in 32 bit integer. LLGetStatusBits Gets the controller status bits encoded in 32 bit integer. LLSetGetDigOPs Sets or Gets the user digital output bits encoded in 32 bit integer. LoadParamSet Loads stored settings for specific controller. MoveAbsolute Initiates an absolute move. MoveAbsoluteEnc Initiates an absolute move with specified positions for encoder equipped stages. MoveAbsoluteEx Initiates an absoloute move with specified positions. MoveAbsoluteRot Initiates an absolute move with specified positions for rotary stages. MoveHome Initiates a homing sequence. MoveJog Initiates a jog move. MoveRelative Initiates a relative move. MoveRelativeEnc Initiates a relative move with specified distances for encoder equipped stages. MoveRelativeEx Initiates a relative move with specified distances. MoveVelocity Initiates a move at constant velocity with no end point. SaveParamSet Saves settings for a specific controller. SetAbsMovePos Sets the absolute move position. SetBLashDist Sets the backlash distance. SetChannelSwitch Sets the GUI channel switch position. SetDispMode Sets the GUI display mode. SetEncCalibTableParams Sets the encoder calibration table parameters for encoder equipped stages. SetEncPosControlParams Sets the encoder position control parameters for encoder equipped stages. 63 Two-, and Three-Channel Stepper Motor Controller SetEncPosCorrectParams Sets the encoder position correction parameters for encoder equipped stages. SetHomeParams Sets the homing sequence parameters. SetHWLimSwitches Sets the limit switch configuration settings. SetJogMode Sets the jogging button operating modes. SetJogStepSize Sets the jogging step size. SetJogVelParams Sets the jogging velocity profile parameters. SetMotorParams Sets the motor gearing parameters. SetPhaseCurrents Sets the coil phase currents. SetPositionOffset Sets the motor position offset. SetPotParams Sets the velocity control potentiometer parameters (Cube drivers). SetRelMoveDist Sets the relative move distance. SetStageAxisInfo Sets the stage axis parameters. SetTriggerParams Sets the move triggering parameters. SetVelParams Sets the velocity profile parameters. ShowSettingsDlg Display the GUI Settings panel. StartCtrl Starts the ActiveX Control (starts communication with controller) StopCtrl Stops the ActiveX Control (stops communication with controller) StopImmediate Stops a motor move immediately. StopProfiled Stops a motor move in a profiled (decelleration) manner. Properties APTHelp Specifies the help file that will be accessed when the user presses the F1 key. If APTHelp is set to 'True', the main server helpfile MG17Base will be launched. DisplayMode Allows the display mode of the virtual display panel to be set/read. HWSerialNum specifies the serial number of the hardware unit to be associated with an ActiveX control instance. 64 Appendix F Stepper Motor Operation - Background F.1 How A Stepper Motor Works F.1.1 General Principle Thorlabs actuators use a stepper motor to drive a precision lead screw. Stepper motors operate using the principle of magnetic attraction and repulsion to convert digital pulses into mechanical shaft rotation. The amount of rotation achieved is directly proportional to the number of input pulses generated and the speed is proportional to the frequency of these pulses. A basic stepper motor has a permanent magnet and/or an iron rotor, together with a stator. The torque required to rotate the stepper motor is generated by switching (commutating) the current in the stator coils as illustrated in Fig. F.1. Fig. F.1 Simplified concept of stepper motor operation Although only 4 stator poles are shown above, in reality there are numerous tooth-like poles on both the rotor and stator. The result is that positional increments (steps) of 1.8 degrees can be achieved by switching the coils (i.e. 200 steps per revolution). If the current through one coil is increased as it is decreased in another, the new rotor position is somewhere between the two coils and the step size is a defined fraction of a full step (microstep). The size of the microstep depends on the resolution of the driver electronics. When used with the Thorlabs BSC203 Stepper Motor Controller, the smallest angular adjustment is 0.000879 degrees (i.e. 1.8/0.000879 = 2048 microsteps per full step), resulting in a resolution of 409,600 microsteps per revolution for a 200 full step motor. In practise, the mechanical resolution achieved by the system may be coarser than a single microstep, primarily because there may be a small difference between the orientation of the magnetic field generated by the stator and the orientation in which the rotor comes to rest. N S on on N S on on 65 Two-, and Three-Channel Stepper Motor Controller F.1.2 Positive and Negative Moves Positive and negative are used to describe the direction of a move. A positive move means a move from a smaller absolute position to a larger one, a negative move means the opposite. In the case of a linear actuator, a positive move takes the platform of the stage further away from the motor. In a rotational stage, a positive move turns the platform clockwise when viewed from above. F.1.3 Velocity Profiles To prevent the motor from stalling, it must be ramped up gradually to its maximum velocity. Certain limits to velocity and acceleration result from the torque and speed limits of the motor, and the inertia and friction of the parts it drives. The system incorporates a trajectory generator, which performs calculations to determine the instantaneous position, velocity and acceleration of each axis at any given moment. During a motion profile, these values will change continuously. Once the move is complete, these parameters will then remain unchanged until the next move begins. The specific move profile created by the system depends on several factors, such as the profile mode and profile parameters presently selected, and other conditions such as whether a motion stop has been requested. The profile mode can be set to Trapezoidal or Bow Index as described in Section 5.3.1. The Trapezoidal profile is a standard, symmetrical acceleration/deceleration motion curve, in which the start velocity is always zero. This profile is selected when the Bow Index field is set to 0. In a typical trapezoidal velocity profile, (see Fig. 5.4.), the stage is ramped at acceleration a to a maximum velocity v. As the destination is approached, the stage is decelerated at a so that the final position is approached slowly in a controlled manner. Fig. 6.2 Graph of a trapezoidal velocity profile velocity maximum velocity (v) time acceleration (slope) a Appendix F 66 HA0278T Rev F Aug 2014 The S-curve profile is a trapezoidal curve with an additional 'Bow Value' parameter, which limits the rate of change of acceleration and smooths out the contours of the motion profile. The Bow Value is applied in mm/s 3 and is derived from the Bow Index field as follows: Bow Value = 2 (Bow Index -1) within the range 1 to 262144 (Bow Index 1 to 18). In this profile mode, the acceleration increases gradually from 0 to the specified acceleration value, then decreases at the same rate until it reaches 0 again at the specified velocity. The same sequence in reverse brings the axis to a stop at the programmed destination position. Example Fig. 6.3 Typical S-Curve Profile The figure above shows a typical S-curve profile. In segment (1), the S-curve profile drives the axis at the specified Bow Index (BI) until the maximum acceleration (A) is reached. The axis continues to accelerate linearly (Bow Index = 0) through segment (2). The profile then applies the negative value of Bow Index to reduce the acceleration to 0 during segment (3). The axis is now at the maximum velocity (V), at which it continues through segment (4). The profile then decelerates in a similar manner to the acceleration phase, using the Bow Index to reach the maximum deceleration (D) and then bring the axis to a stop at the destination. F.2 Positioning a Stage F.2.1 General Whenever a command is received to move a stage, the movement is specified in motion units, (e.g. millimetres). This motion unit value is converted to microsteps before it is sent to the stage. If operating the unit by the front panel (local mode) this Note The higher the Bow Index, then the shorter the BI phases of the curve, and the steeper the acceleration and deceleration phases. High values of Bow Index may cause a move to overshoot. BI BI A D -BI -BI V V e l o c i t y 1 2 3 4 5 6 7 A - acceleration D - deceleration V - velocity BI - bow index 67 Two-, and Three-Channel Stepper Motor Controller conversion is performed internally by the controller. If operating via a PC (remote mode) then the conversion is performed by the APT software. Each motor in the system has an associated electronic counter in the controller, which keeps a record of the net number of microsteps moved. If a request is received to report the position, the value of this counter is converted back into motion units. F.2.2 Home position When the system is powered up, the position counters in the controller are all set to zero and consequently, the system has no way of knowing the position of the stage in relation to any physical datum. A datum can be established by sending all the motors to their Home positions. The Home position is set during manufacture and is determined by driving the motor until the negative limit switch is reached and then driving positively a fixed distance (zero offset). When at the Home position, the counters are reset to zero thereby establishing a fixed datum that can be found even after the system has been switched off. See Section 4.3. for details on performing a Home move. F.2.3 Limit Switches A linear stage moves between two stops, and movement outside these limits is physically impossible. Linear stages can include stages that control the angle of a platform within a certain range, although the movement of the platform is not really linear but angular. Rotary stages can rotate indefinitely, like a wheel. Linear and rotary stages both contain microswitches that detect certain positions of the stage, but they differ in the way these switches are used. All linear stages have a ve limit switch, to prevent the stage from accidentally being moved too far in the ve direction. Once this switch is activated, movement stops. The switch also provides a physical datum used to find the Home position. Some linear stages and actuators also have a +ve limit switch, whereas others rely on a physical stop to halt the motion in the positive direction. A rotary stage has only one switch, used to provide a datum so that the Home position can be found. Movement is allowed right through the switch position in either direction. Fig. F.4 Stage limit switches Rotary stage Linear stage Datum switch -ve limit switch +ve limit switch (or stop) Appendix F 68 HA0278T Rev F Aug 2014 F.2.4 Minimum and Maximum Positions These positions are dependent upon the stage or actuator to which the motors are fitted, and are defined as the minimum and maximum useful positions of the stage relative to the Home position - see Fig. F.5. The distance from the Minimum position to the Maximum position is the useful travel of the stage. It is often the case that the Minimum position is zero. The Home and Minimum positions then coincide, with movement always occurring on the positive side of the Home position. Rotary stages have effectively no limits of travel. The Minimum and Maximum positions are conventionally set to 0 and 360 degrees respectively. When the position of a rotary stage is requested, the answer will be reported as a number between 0 and 360 degrees, measured in the positive direction from the Home position. Fig. F.5 Minimum and Maximum Positions F.2.5 Power Saving The current needed to hold a motor in a fixed position is much smaller than the current needed to move it, and it is advantageous to reduce the current through a stationary motor in order to reduce heating. Although this heating does not harm the motor or stage, it is often undesirable because it can cause thermal movements through expansion of the metal of the stage. For this reason, power saving is implemented by default from the software drivers. When a motor is moving, the Move Power is applied. When a motor is stationary, the Rest Power is applied. See Phase Powers in Section 5.3.3. for more details on these power settings. Travel Min. position (zero) (home) Max. position Offset -ve limit switch SW positive limit SW negative limit 69 Two-, and Three-Channel Stepper Motor Controller F.3 Error Correction F.3.1 Backlash correction The term backlash refers to the tendency of the stage to reach a different position depending on the direction of approach. Backlash can be overcome by always making the last portion of a move in the same direction, conventionally the positive direction. Consider the situation in Fig. 6.6, a positive move, from 10 to 20 mm, is carried out as one simple move, whereas a negative move, from 20 to 10 mm, first causes the stage to overshoot the target position and then move positively through a small amount. Fig. 6.6 Backlash correction The controller has this type of backlash correction enabled as its default mode of operation, but it can be overridden if the overshoot part of the move is unacceptable for a particular application. See Chapter 5 (PC Operation) for details on setting the backlash correction. negat ive move positive move 10mm 20mm position 70 Appendix G Regulatory G.1 Declarations Of Conformity G.1.1 For Customers in Europe This equipment has been tested and found to comply with the EC Directives 2004/108/EC EMC Directive and 2006/95/EC Low Voltage Directive. Compliance was demonstrated by conformance to the following specifications which have been listed in the Official Journal of the European Communities: Safety EN61010-1: 2010 Safety requirements for electrical equipment for measurement, control and laboratory use. EMC EN61326-1: 2006 Electrical equipment for measurement, control and laboratory use - EMC requirements. G.1.2 For Customers In The USA This equipment has been tested and found to comply with the limits for a Class A digital device, persuant to part 15 of the FCC rules. These limits are designed to provide reasonable protection against harmful interference when the equipment is operated in a commercial environment. This equipment generates, uses and can radiate radio frequency energy and, if not installed and used in accordance with the instruction manual, may cause harmful interference to radio communications. Operation of this equipment in a residential area is likely to cause harmful interference in which case the user will be required to correct the interference at his own expense. Changes or modifications not expressly approved by the company could void the users authority to operate the equipment. G.2 Waste Electrical and Electronic Equipment (WEEE) Directive G.2.1 Compliance As required by the Waste Electrical and Electronic Equipment (WEEE) Directive of the European Community and the corresponding national laws, we offer all end users in the EC the possibility to return "end of life" units without incurring disposal charges. This offer is valid for electrical and electronic equipment sold after August 13th 2005 marked correspondingly with the crossed out "wheelie bin" logo (see Fig. 1) sold to a company or institute within the EC currently owned by a company or institute within the EC still complete, not disassembled and not contaminated 71 Two-, and Three-Channel Stepper Motor Controller Fig. 7.1 Crossed out "wheelie bin" symbol As the WEEE directive applies to self contained operational electrical and electronic products, this "end of life" take back service does not refer to other products, such as pure OEM products, that means assemblies to be built into a unit by the user (e. g. OEM laser driver cards) components mechanics and optics left over parts of units disassembled by the user (PCB's, housings etc.). If you wish to return a unit for waste recovery, please contact Thorlabs or your nearest dealer for further information. G.2.2 Waste treatment on your own responsibility If you do not return an "end of life" unit to the company, you must hand it to a company specialized in waste recovery. Do not dispose of the unit in a litter bin or at a public waste disposal site. G.2.3 Ecological background It is well known that WEEE pollutes the environment by releasing toxic products during decomposition. The aim of the European RoHS directive is to reduce the content of toxic substances in electronic products in the future. The intent of the WEEE directive is to enforce the recycling of WEEE. A controlled recycling of end of life products will thereby avoid negative impacts on the environment. Appendix G 72 HA0278T Rev F Aug 2014 7.3 CE Certificates 73 Two-, and Three-Channel Stepper Motor Controller Appendix G 74 HA0278T Rev F Aug 2014 75 Two-, and Three-Channel Stepper Motor Controller Appendix H Thorlabs Worldwide Contacts USA, Canada, and South America Thorlabs, Inc. 56 Sparta Ave Newton, NJ 07860 USA Tel: 973-579-7227 Fax: 973-300-3600 www.thorlabs.com www.thorlabs.us (West Coast) email: [email protected] Support: [email protected] Europe Thorlabs GmbH Hans-Bckler-Str. 6 85221 Dachau Germany Tel: +49-(0)8131-5956-0 Fax: +49-(0)8131-5956-99 www.thorlabs.de email: [email protected] UK and Ireland Thorlabs Ltd. 1 Saint Thomas Place, Ely Cambridgeshire CB7 4EX Great Britain Tel: +44 (0)1353-654440 Fax: +44 (0)1353-654444 www.thorlabs.de email: [email protected] Support: [email protected] France Thorlabs SAS 109, rue des Ctes 78600 Maisons-Laffitte France Tel: +33 (0) 970 444 844 Fax: +33 (0) 811 381 748 www.thorlabs.de email: [email protected] Scandinavia Thorlabs Sweden AB Box 141 94 400 20 Gteborg Sweden Tel: +46-31-733-30-00 Fax: +46-31-703-40-45 www.thorlabs.de email: [email protected] Japan Thorlabs Japan Inc. Higashi Ikebukuro Q Building 1st Floor 2-23-2 Toshima-ku, Tokyo 170-0013 Japan Tel: +81-3-5979-8889 Fax: +81-3-5979-7285 www.thorlabs.jp email: [email protected] China Thorlabs China Oasis Middlering Centre 3 Building 712 Room 915 Zhen Bei Road Shanghai China Tel: +86 (0)21-32513486 Fax: +86 (0)21-32513480 www.thorlabs.com email: [email protected] Brazil Thorlabs Vendas de Fotnicos Ltda. Rua Riachuelo, 171 So Carlos, SP 13560-110 Brazil Tel: +55-16-3413 7062 Fax: +55-16-3413 7064 www.thorlabs.com Email: [email protected] 76 Thorlabs Ltd. Saint Thomas Place, Ely Cambridgeshire CB7 4EX, UK Tel: +44 (0) 1353 654440 Fax: +44 (0) 1353 654444 www.thorlabs.com Thorlabs Inc. 56 Sparta Ave Newton, NJ07860 USA Tel: +1 973 579 7227 Fax: +1 973 300 3600 www.thorlabs.com