Micronix MMC-10 Series Reference Manual

Modular motion control system
Hide thumbs Also See for MMC-10 Series:

Advertisement

Quick Links

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the MMC-10 Series and is the answer not in the manual?

Questions and answers

Summary of Contents for Micronix MMC-10 Series

  • Page 2: Table Of Contents

    Inventory .......................... 3 Quick Start: Connecting Your Motion Device..............4 Getting Your Target PC Ready ..................6 Quick Start: Using the Micronix Motion Controller Platform ......... 7 Motion With and Without Encoders ................15 Frequently Asked Questions ....................15 Trouble Shooting ........................
  • Page 3: Introduction

    Orange – Stage is Unaddressed b. Green – Stage has an address and is ready 7. LED Error Indicator 1 a. Red – An error has occurred Features Integrated controller/driver for MICRONIX USA stick-slip piezo motors • • Ultra-compact design •...
  • Page 4: Inventory

    Inventory We will begin the setup process by making sure all the components we will need are accounted for. With every MMC-10 controller, the following should be included: Package Contents: 1. MMC-10 Controller 2. 24V Power Supply 3. Power Cable 4.
  • Page 5: Quick Start: Connecting Your Motion Device

    Quick Start: Connecting Your Motion Device. Now that we have confirmed we have everything we need; we can get the controller and stages set up. 1. Connect MMC-10 to Motion Devices: Each stage to be used with an MMC-10 will have male DSUB15...
  • Page 6 3. (Optional) Connect MMC-10 units together The MMC-10 has both an in and an out jack for RS-485 communication. This jack also distributes power and is responsible for addressing in situations where the auto address function is used. Connect the output of one MMC-10 to the input of another to daisy chain multiple MMC-10 controllers together,...
  • Page 7: Getting Your Target Pc Ready

    Getting Your Target PC Ready There are a number of ways to control Micronix controllers, but let’s start by setting up the Micronix MCP user interface on your PC. 1. Install a. To install the Micronix motion controller platform double click the setup.exe...
  • Page 8: Quick Start: Using The Micronix Motion Controller Platform

    15 of this manual for help resolving this issue. With a com port identified, it is time to connect to the MMC-10 using the Micronix MCP program installed in section 2.2.
  • Page 9 2. Commands Terminal section of Micronix MCP software a. Command – This field allows you to interface with your MMC-10 through manual terminal commands. For more about Commands see section 7 of the reference Manual. i. Enter your command in the blank field This button appends a ‘?’...
  • Page 10 c. Response i. Terminal – This field shows the responses from the MMC-10. 1. The clear button will delete all entries in the Terminal ii. Response – Responses to user queries are displayed here. 1. The clear button will delete all entries in the Response terminal. iii.
  • Page 11 3. Motion – This section allows you to control movement with an easy to use user interface Motion section of Micronix MCP software a. Position i. Zero - This button will set the current position to zero for both the calculated and encoder reading.
  • Page 12 c. Motion Parameters – This section dictates some parameters for how a movement function is executed. i. Vel – This field indicates the controllers current set velocity ii. Accel – This field indicates the controllers current set value for acceleration iii.
  • Page 13 4. System System section of Micronix MCP software b. Axes – This field will show the stages attached to the program along with associated axis number c. Parameters – Upon opening the port as discussed above, the MMC-10 MCP will populate the following fields.
  • Page 14 d. Encoder Polarity – This setting allows the user to flip positive and negative directions for the Encoder. e. Motor Polarity – This setting allows the user to flip positive and negative directions for the Motor. Display Units – This setting allows switching between linear units (mm) and rotary units (degrees).
  • Page 15 ii. Deadband – This setting changes the amount of error the closed loop control mode will allow before trying to reposition. iii. Time Out – This setting allows you to change the amount of time a closed loop operation will search until it times out.
  • Page 16: Motion With And Without Encoders

    Difficulty Installing the Micronix Motion Control Platform To run the Micronix MCP software, you will need the .NET Framework 4.0 or higher to already be installed on the target computer. If the target computer has Windows 7 or later installed and is current on all updates, .NET 4.0 should already be installed.
  • Page 17 If this does not solve the problem, please contact Micronix Support. 4. If the com port is recognized, but the Micronix Motion Control Platform is unable to communicate with it, double check the setting of the port. To do this, open the control panel in Microsoft windows and navigate to the device manager.
  • Page 18: Technical Information

    5. Technical Information MMC-10 Specifications Parameter Description Motor Type Stick-slip piezo motors Interface USB 2.0 compliant/RS-485 Commands ASCII Commands Trajectory Mode Trapezoidal velocity profile Servo Clock 10 kHz * Each axis requires 0.5A at peak usage. A up the individual axis power requirements to determine the power supply amperage requirement.
  • Page 19: Operation

    6. Operation Axis Addressing Auto Addressing is the default method of assigning axis numbers on start up. Controllers are automatically assigned axis numbers on every power up, starting with axis 1 and increasing consecutively until reaching axis 99. Manual axis numbers may be assigned to a unique controller using the ANR Command.
  • Page 20: Mln, Mlp, And User Defined References

    MLN, MLP, and User Defined References The move to limit negative (MLN) and moves to limit positive (MLP) commands both require the attached stage to have an encoder and will move the stage to end of travel in their respective directions. The orientation of positive versus negative limits can be changed using the limit direction (LDR) command.
  • Page 21: Command Line Format

    Command Line Format Commands are first executed in the order that they are input, then line by line. This means that two commands on the same line are executed significantly closer to each other than if they were on two separate lines. Each command is separated by a semicolon (;) and every command line ends in a terminator (EX: carriage return).
  • Page 22: Internal Programming

    Internal Programming A program may be used to save time when repeatedly using a sequence of commands. Each controller or axis must be programmed individually; however, multiple controllers may execute the same program at the same time. For a more detailed look at the internal programming features of the MMC-10, see the appendix of this manual.
  • Page 23: Summary Of Commands

    Summary of Commands During Real-time Program Global Command Description Page Motion Read Read Read Read       Acceleration     Maximum Allowable Acceleration      Set Axis Number    ...
  • Page 24 Continued… During Real-time Program Global Motion Command Description Page Read Read Read Read     Run Program At Start-Up    Set Feedback Constants   Position     Set Resolution   Perform Soft Reset ...
  • Page 25: Command Descriptions

    Command Descriptions Acceleration During Motion Real-time Program Global Read Read Read Read      This command is used to set the desired acceleration for the Command specified axis, distinct from the deceleration [DEC]. The Description: acceleration value must be less than the maximum acceleration [AMX] for the command to be accepted.
  • Page 26 Maximum Allowable Acceleration During Motion Real-time Program Global Read Read Read Read     Command This command is used to set the maximum allowable Description: acceleration for the specified axis. A read operation returns the maximum allowable Returns: acceleration value in mm/s for the specified axis.
  • Page 27 Set Axis Number During Motion Real-time Program Global Read Read Read Read      This command is used to override Auto Addressing by manually assigning an axis number to a controller. Auto Addressing is the default method of assigning axis numbers on power up and may be reassigned to an axis by substituting a “0”...
  • Page 28 Clear Errors During Motion Real-time Program Global Read Read Read Read   Command This command is used to clear all error messages without Description: reading them. Returns: A read operation cannot be used with this command. nCER – Standard syntax Syntax: 0CER –...
  • Page 29 Dump Trace Data During Motion Real-time Program Global Read Read Read Read  This command is used to read trace data from a specified Command axis initially recorded by the trace command [TRA]. The Description: retrieved trace data set is dumped from the controller, consequently allowing the data to be retrieved only once.
  • Page 30 Closed Loop Deadband During Motion Real-time Program Global Read Read Read Read     This command is used to set the acceptable deadband and deadband timeout values. Deadband refers to the number of encoder counts (±) from the target that is considered acceptable. If the parameter (x1) is set to “0”, the controller will continuously oscillate Command Description:...
  • Page 31 Deceleration During Motion Real-time Program Global Read Read Read Read      This command is used to set the desired deceleration for the Command specified axis, distinct from the acceleration [ACC]. The Description: deceleration value must be less than the maximum acceleration value [AMX] for the command to be accepted.
  • Page 32 Restore Factory Defaults During Motion Real-time Program Global Read Read Read Read  Command This command restores the factory default parameters. Description: Returns: A read operation is not available with this command. nDEF – Standard syntax Syntax: Error [#]: – Missing axis number [30] Parameter –...
  • Page 33 Set Analog or Digital Encoder During Motion Real-time Program Global Read Read Read Read     Command This command is used to specify whether the encoder signal Description: for a specified axis is analog or digital. A read operation returns the following encoder mode values for the specified axis: Returns: –...
  • Page 34 Set Encoder Resolution During Motion Real-time Program Global Read Read Read Read     This command is used to set the desired encoder resolution for the specified axis. When a digital encoder is connected, Command encoder resolution is determined by the encoder itself and Description: the ENC setting will need to reflect this value.
  • Page 35 End Program Recording During Motion Real-time Program Global Read Read Read Read   This command is used to exit out of program recording mode, which is initiated by the PGM command. The END Command command must be placed separately on the last line of the Description: program sequence.
  • Page 36 Encoder Polarity During Motion Real-time Program Global Read Read Read Read     This command is used to switch the encoder signal polarity for the specified axis, which determines the physical direction of travel that the stage reads as positive (by default, moving away from where the wires enter the base of Command the stage is positive).
  • Page 37 Erase Program During Motion Real-time Program Global Read Read Read Read  This command is used to erase a specified program from an axis. Before recording a program, use the LST command to see what program numbers are available for that axis. There Command are 16 program numbers available allowing up to 16 Description:...
  • Page 38 Read and Clear Errors During Motion Real-time Program Global Read Read Read Read   Command This command is used to read and clear any pending error Description: messages. A read operation returns a list of error messages for the specified axis in the following format.
  • Page 39 Emergency Stop During Motion Real-time Program Global Read Read Read Read     This command is used to stop a specific axis or all Command connected axes simultaneously in case of an emergency. Description: The controller executes the largest possible deceleration. Returns: A read operation is not available with this command.
  • Page 40 Execute Program During Motion Real-time Program Global Read Read Read Read   This command is used to execute a specified program for Command one or multiple axes. If executing a program globally, all Description: connected axes should have individual programs stored under the specified program number prior to execution.
  • Page 41 Set Open or Closed Loop Mode During Motion Real-time Program Global Read Read Read Read    Command This command is used to select the feedback mode of the Description: controller. See section 4.2 for more details A read operation returns the following loop mode values for the specified axis: –...
  • Page 42 Home Configuration During Motion Real-time Program Global Read Read Read Read      Command This command is used to select the direction of motion Description: when the Home [HOM] command is initialized. A read operation returns the current direction setting: Returns: –...
  • Page 43 Home During Motion Real-time Program Global Read Read Read Read      This command is used to find the home position for a specified axis. An error will occur if there is no encoder signal at the time of execution. Home is configured using Command the HCG command.
  • Page 44 Set IO Definition During Motion Real-time Program Global Read Read Read Read  Command This command is used to select Input or Output for one of Description: the IO pins on the 8-Pin Din connector. Returns: A read operation is not available with this command. –...
  • Page 45 Set IO Function During Motion Real-time Program Global Read Read Read Read  Command This command is used to select the function of an IO pin. Description: Returns: A read operation is not available with this command. nIOFx1,x2 – Standard syntax –...
  • Page 46 Jog Acceleration and Deceleration During Motion Real-time Program Global Read Read Read Read     This command is used to set the desired value for the jog Command acceleration and deceleration for a specified axis. The Description: controller will not allow for JAC values that are greater than AMX.
  • Page 47 Jog Mode During Motion Real-time Program Global Read Read Read Read   This command is used to jog a specific axis, or move continuously in a direction with no target position. The jog Command velocity is a percentage of the maximum velocity and may Description: be changed on-the-fly by sending another JOG command during motion.
  • Page 48 Limit Configuration During Motion Real-time Program Global Read Read Read Read     This command selects how the stage will detect it’s end limits, Command Description: using a limit switch or using the encoder to detect a hard stop. Returns: A read operation returns the selected limit type.
  • Page 49 Positive/ Negative Limit Location During Motion Real-time Program Global Read Read Read Read      Determines orientation of Positive limit, and negative limit. Command NOTE: EPL, MPL and LDR must all be changed together to Description: maintain proper functionality, changing one of these values without changing the rest will result in improper stage behavior.
  • Page 50 Limit Status During Motion Real-time Program Global Read Read Read Read     Command Returns the status of both limit switches in the form LSP, LSN. Description: This is useful for limit switch configuration. Returns: A read operation returns current limit status for the specified axis. nLIM? –...
  • Page 51 NOTE: Command Commands are returned sequentially and individually, Description: which means in the Micronix GUI they will be listed from bottom (first returned) to top (last returned). A read operation returns the program table for the specified Returns: axis.
  • Page 52 Limit Switch Polarity During Motion Real-time Program Global Read Read Read Read    Command This command sets whether the limit switch inputs are Description: active high[1] or low[0] Returns: A read operation returns the limit polarity value. nLPLx – Standard syntax Syntax: Error(s):...
  • Page 53 Move to Negative Limit During Motion Real-time Program Global Read Read Read Read    This command initiates a move to the negative limit position. Upon reaching the negative hard limit the Command controller will then move the stage back from the hard limit Description: and stop.
  • Page 54 Move to Positive Limit During Motion Real-time Program Global Read Read Read Read    This command initiates a move to the positive limit position. Upon reaching the positive hard limit the controller will Command then move the stage back from the hard limit and stop. If Description: hard stop detection using the encoder (LCG0) is active, an error will occur if there is no encoder signal at the time of...
  • Page 55 Toggle Motor Off/On During Motion Real-time Program Global Read Read Read Read     This command is used to turn the motor current flow “Off” Command or “On” for a specified axis. Turning the motor current off Description: will cause the piezo to relax and the stage will shift slightly.
  • Page 56 Toggle Motor Polarity During Motion Real-time Program Global Read Read Read Read     This command set the motor polarity for the specified axis. If the theoretical positive direction is away from the motor, changing this setting will make the theoretical positive Command direction towards the motor.
  • Page 57 Synchronous Move - Absolute During Motion Real-time Program Global Read Read Read Read   This command is used to set up a synchronous move to an absolute position. This command is most useful when Command coordinating motion to an absolute position between 2 or Description: more axes and requires a RUN command on a separate line to execute the synchronous move.
  • Page 58 Synchronous Move – Relative During Motion Real-time Program Global Read Read Read Read   This command is used to set up a synchronous move to a position relative to the current position. This command is most useful when coordinating relative positions between 2 Command or more axes and requires a RUN command on a separate Description:...
  • Page 59 Move Absolute During Motion Real-time Program Global Read Read Read Read    This command is used to initiate an instantaneous move to Command an absolute position for a specified axis. An error will occur Description: if the commanded position is outside of the soft limits. Returns: A read operation is not available with this command.
  • Page 60 Move Relative During Motion Real-time Program Global Read Read Read Read    This command is used to initiate an instantaneous move to a Command relative position for a specified axis. An error will occur if Description: the commanded increment will cause the stage to travel outside of the set soft limits.
  • Page 61 Loop Program During Motion Real-time Program Global Read Read Read Read     This command is used to change the number of times a program will execute. If the program loop setting is 0, any program that is executed will run in a continuous loop. It can be combined with the PGS command to run a program continuously on startup.
  • Page 62 Begin Program Recording During Motion Real-time Program Global Read Read Read Read    This command is used to enter program recording mode for a specified axis. The program being recorded must use a unique program number or else the program will be ignored. Command Us the PGM? command to check program number Description:...
  • Page 63 Run Program At Start-Up During Motion Real-time Program Global Read Read Read Read    Command This command is used to set a program to run immediately Description: on start-up. Only one program per axis can run on start up. A read operation returns a value for the specified axis in the format below: Returns:...
  • Page 64 Set Feedback Constants During Motion Real-time Program Global Read Read Read Read    Command This command is used to set the encoder feedback gain Description: constants for a specified controller. A read operation returns the encoder feedback constant Returns: values for the specified axis.
  • Page 65 Position During Motion Real-time Program Global Read Read Read Read   Command This command is used to read the position information from Description: the specified axis controller A read operation returns the position values in mm for the specified axis in the following format: Returns: [Theoretical position in mm, Encoder position in mm] [Theoretical position in degrees, Encoder position in degrees]...
  • Page 66 Set Resolution During Motion Real-time Program Global Read Read Read Read    Command This command is used to set the DAC (digital to analog Description: converter) steps per micron resolution for the specified axis. A read operation returns the resolution value in steps per Returns: micron for the specified axis.
  • Page 67 Perform Soft Reset During Motion Real-time Program Global Read Read Read Read   This command is used to perform a soft reset of the specified axis. Unsaved settings will be lost. In a multi axis Command stack, if only one axis is restarted using this command and ANR is set to 0, that axis will address as “1”, even if Description: another axis is already addressed as “1”...
  • Page 68 Start Synchronous Move During Motion Real-time Program Global Read Read Read Read   Command This command is used to start a global synchronous move Description: previously set up by using the MSA or MSR commands. Returns: A read operation cannot be used with this command. RUN –...
  • Page 69 Save Axis Settings During Motion Real-time Program Global Read Read Read Read   Command This command is used to save all settings for the specified Description: axis. This allows an axis to be configured on power up. Returns: A read operation cannot be used with this command. nSAV –...
  • Page 70 Status Byte During Motion Real-time Program Global Read Read Read Read   Command This command is used to check the status register for a specified Description: axis. A read operation will return an integer from 0 to 255 describing the status of the axis.
  • Page 71 Stop Motion During Motion Real-time Program Global Read Read Read Read    Command This command is used to stop motion for a specified axis. Description: Returns: A read operation cannot be used with this command. – nSTP Standard syntax Syntax: 0STP –...
  • Page 72 Save Startup Position During Motion Real-time Program Global Read Read Read Read      This command is used to set the startup position. Default is Command 0. This setting does not require the SAV command to save it Description: into memory.
  • Page 73 Sync During Motion Real-time Program Global Read Read Read Read   This command is used in a program together with the wait Command for sync [WSY] command in order to synchronize motion Description: between multiple axes. Returns: A read operation cannot be used with this command. –...
  • Page 74 Negative Soft Limit Position During Motion Real-time Program Global Read Read Read Read      This command is used to set the desired negative soft limit position, using absolute position, for the specified axis. The Command negative soft limit position value must be less than the Description: positive soft limit position value [TLP] for the command to be accepted.
  • Page 75 Positive Soft limit Position During Motion Real-time Program Global Read Read Read Read      This command is used to set the desired positive soft limit position, using absolute position, for the specified axis. The Command positive soft limit position value must be greater than the Description: negative soft limit position value [TLN] for the command to be accepted.
  • Page 76 Perform Trace During Motion Real-time Program Global Read Read Read Read      This command is used to execute a trace of the specified Command axis. In lieu of the trace beginning at value stored in x3, a Description: TTL logic pulse to an IO pin [IOF] [IOD] can be used to trigger the trace function from an external source.
  • Page 77 Velocity During Motion Real-time Program Global Read Read Read Read       This command is used to set the desired velocity for the specified axis. The velocity may be changed on-the-fly by Command sending another VEL command during motion. The Description: velocity value should be lower than the maximum allowable velocity [VMX] for the command to be accepted.
  • Page 78 Firmware Version During Motion Real-time Program Global Read Read Read Read   Command This command is used to check the firmware version for the Description: specified axis. A read operation returns the firmware version for the Returns: specified axis. nVER? –...
  • Page 79 Maximum Allowable Velocity During Motion Real-time Program Global Read Read Read Read   This command is used to read the maximum allowable Command velocity for a specific axis. This value is calculated based on Description: the steps per micron parameter in the REZ command. A read operation returns the maximum allowable velocity Returns: value in mm/s for the specified axis.
  • Page 80 Encoder Velocity During Motion Real-time Program Global Read Read Read Read   Command This command returns the actual velocity calculated from Description: the encoder. Returns: A read operation returns the encoder velocity in mm/s. nVRT? – Standard syntax Syntax: Error [#]: VRT? –...
  • Page 81 Wait For Stop During Motion Real-time Program Global Read Read Read Read  Command This command is used in a program to wait until motion is Description: completed to begin executing the next command. Returns: A read operation cannot be used with this command. nWST –...
  • Page 82 Wait For Sync During Motion Real-time Program Global Read Read Read Read   This command is used in a program together with the sync Command [SYN] command in order to synchronize motion between Description: multiple axes. Returns: A read operation cannot be used with this command. nWSY –...
  • Page 83 Wait For Time Period During Motion Real-time Program Global Read Read Read Read  Command This command is used in a program to wait for a specified Description: period of time before executing the next command. Returns: A read operation cannot be used with this command. nWTMx –...
  • Page 84 Zero Position During Motion Real-time Program Global Read Read Read Read    Command This command is used to set the absolute zero position for Description: the specified axis. Returns: A read operation cannot be used with this command. nZRO –...
  • Page 85 Error Messages Error Name Description Number The Receive Buffer has reached or exceeded Receive Buffer Overrun maximum capacity. The command that triggered this error was trying to Motor Disabled move the servo while it was disabled. The command that triggered this error was trying to No Encoder Detected access encoder data when no encoder was attached.
  • Page 86 The 3-letter instruction entered is not a valid Invalid Command command. Ensure that the 3-letter instruction is a recognizable command. A read request for a command was entered without Global Read Operation an axis number. A read request cannot be used in a Request global context.
  • Page 87 Only certain commands can be executed when Command Cannot Be motion is in progress. Check the command pages for Executed During Motion information on individual commands. If a requested move will take the controller outside of Move Outside Soft Limits the preset travel limits, then the command will not be executed.
  • Page 88 The requested move will take the controller outside of End of Travel Limit its valid travel range, therefore the move is disallowed. A Home or a Move To Limit Procedure is in progress. Motion commands are disallowed during this time. A Home In Progress STP or EST command can be used to terminate the Home, and then a motion command can be sent.
  • Page 89: Pin Outs

    8. Pin Outs 8.1.1 Power Pin-Out Description +24V 8.1.2 Motor/Encoder Pin-Out Description Motor Phase 1 Motor Phase 2 Motor GND Limit Switch + Limit Switch - Index+ Signal GND Index- 8.1.3 RS-485 Input Description +24VDC 24V GND RS485 A RS485 B ID In RS485 GND 8.1.4...
  • Page 90 89 | P a g e Rev 2.01...

Table of Contents