Table of Contents

Advertisement

Quick Links

USER'S MANUAL
INTELLIGENT MOTOR CONTROLLERS
PC46 FAMILY
OREGON MICRO SYSTEMS, INC.
TWIN OAKS BUSINESS CENTER
th
1800 NW 169
PLACE, SUITE C100
BEAVERTON, OR 97006
PHONE 503-629-8081
FAX 503-629-0688
EMAIL sales@OMSmotion.com
WEB SITE www.OMSmotion.com

Advertisement

Table of Contents
loading

Summary of Contents for Oregon Micro Systems PC46 family

  • Page 1 USER’S MANUAL INTELLIGENT MOTOR CONTROLLERS PC46 FAMILY OREGON MICRO SYSTEMS, INC. TWIN OAKS BUSINESS CENTER 1800 NW 169 PLACE, SUITE C100 BEAVERTON, OR 97006 PHONE 503-629-8081 FAX 503-629-0688 EMAIL sales@OMSmotion.com WEB SITE www.OMSmotion.com...
  • Page 2 © 2001 Oregon Micro Systems, Inc., A Pro-Dex Company ALL RIGHTS RESERVED This document is copyrighted by Oregon Micro Systems, Inc. You may not reproduce, transmit, transcribe, store in a retrieval system, or translate into any language in any form or by any means, electronic, mechanical, magnetic, optical, chemical, manual, or otherwise, any part of this publication without the express written permission of Oregon Micro Systems, Inc.
  • Page 3: Table Of Contents

    TABLE OF CONTENTS 1. GENERAL DESCRIPTION TABLE OF CONTENTS 1. GENERAL DESCRIPTION INTRODUCTION ..................... 1-1 FUNCTIONAL DESCRIPTION................. 1-1 VELOCITY PROFILES ..................1-3 2. GETTING STARTED INTRODUCTION ..................... 2-1 JUMPERS......................2-2 HARDWARE INSTALLATION ................. 2-4 SOFTWARE INSTALLATION ................2-5 MOTOR CONTROL CONNECTOR ..............2-5 3.
  • Page 4 TABLE OF CONTENTS 6. COMMAND STRUCTURE ENCODER INTERFACE ..................5-1 HOME PROCEDURES..................5-3 6. COMMAND STRUCTURE INTRODUCTION....................6-1 COMMAND QUEUES..................6-2 COMMAND SUMMARY..................6-2 AXIS SPECIFICATION COMMANDS...............6-6 SYSTEM CONTROL COMMANDS ..............6-10 USER I/O COMMANDS..................6-16 MOVE SPECIFICATION COMMANDS............6-21 MOVE EXECUTION COMMANDS ..............6-29 MOVE TERMINATION COMMANDS .............6-33 LOOP CONTROL COMMANDS ..............6-35 HOME AND INITIALIZATION CONTROL COMMANDS.........6-40 MOVE SYNCHRONIZATION COMMANDS............6-43...
  • Page 5 TABLE OF CONTENTS A. LIMITED WARRANTY A. LIMITED WARRANTY B. TECHNICAL INFORMATION / RETURN FOR REPAIR PROCEDURES C. SPECIFICATIONS INDEX PC46 User’s Manual...
  • Page 6 TABLE OF CONTENTS INDEX This page intentionally left blank PC46 User’s Manual...
  • Page 7: Introduction

    GENERAL DESCRIPTION 1.1. INTRODUCTION The PC46 family of intelligent motion controls can manage as many as 6 axes of motion in one I/O slot of a PC/AT or compatible computer. They meet the IBM I/O channel specifications and can be plugged directly into the backplane of these machines. The PC46-2E can, for example, simultaneously control two axes of step motors while monitor- ing their actual position with the built in incremental encoder interface.
  • Page 8 FUNCTIONAL DESCRIPTION 1. GENERAL DESCRIPTION smooth coordinated move on up to six axes using linear, parabolic or cosine velocity profiles. It can manage as many as six independent or coordinated processes. The PC46 will calculate the optimum velocity profile to generate the desired move, while conforming to the acceleration and velocity data input by the host computer.
  • Page 9: Velocity Profiles

    1. GENERAL DESCRIPTION VELOCITY PROFILES 1.3. VELOCITY PROFILES The PC46 offers three options for ramping the device to speed. The traditional constant acceleration or linear velocity ramp (see Figure 1-1) is the default at power up or reset. The half sinusoid acceleration or half cosine velocity ramp (see Figure 1-3) is selected by the CN command.
  • Page 10 VELOCITY PROFILES 1. GENERAL DESCRIPTION and the distance traveled in the ramp is: − where is the initial acceleration, t is time during the ramp and is total ramp time if the acceleration had reached zero. The parameter supplied with the PN command is 10 times the ratio which can take on values from 3 to 10, allowing the final acceleration to range from 70% to 10% respectively of the programmed or initial value.
  • Page 11 1. GENERAL DESCRIPTION VELOCITY PROFILES and the velocity is then:       −   and the distance traveled in the ramp is: − where V is the peak velocity, is the peak acceleration. The distance needed to ramp up is then: π...
  • Page 12 VELOCITY PROFILES 1. GENERAL DESCRIPTION π The cosine ramp requires times longer than a linear ramp to reach the same velocity when using the same peak acceleration. Since the purpose of the cosine ramp is smooth operation, it is desirable to adjust the velocity parameters such that the desired profile is achieved even when the stage does not reach the programmed speed as opposed to truncating the curve as the parabolic modes do.
  • Page 13: Getting Started

    There are seven available models of the PC46 controller board. Each model offers slightly different functionality that corresponds to a wide pricing spectrum for the PC46 Family of controllers. Listed below is a description of the defining characteristics for each PC46 Model.
  • Page 14: Jumpers

    JUMPERS 2. GETTING STARTED PC46-4E: This model is functionally equivalent to the PCX-4E. The physical board utilizes the latest technology, is approximately half the length and requires less power. The board has two additional input bits available (SYNC0 and SYNC1). The update rate is 1024 times per second.
  • Page 15 2. GETTING STARTED JUMPERS address a 0. Jumpers across A4, A5, A6 and A7 make the middle four bits 0, making the middle hex digit of the address a 0. Removing the jumpers from A8 and A9 makes each of these lines a 1, making the most significant hexadecimal digit a 3. J14, just above the edge connector, determines which interrupt level the PC46 board will use when it communicates.
  • Page 16: Hardware Installation

    15. If a message similar to this is displayed, the board was correctly installed and you are communicating with the PC46. 16. If no message was displayed, double check the boards installation. If you are still having a problem contact Oregon Micro Systems for assistance. PC46 User’s Manual...
  • Page 17: Software Installation

    The Support Software disk contains several versions of a program which allow the user to interact with an Oregon Micro Systems PC46 motion control board. The user may type PC46 commands on the computer’s keyboard and they are passed to the PC46 board.
  • Page 18 MOTOR CONTROL CONNECTOR 2. GETTING STARTED This page intentionally left blank PC46 User’s Manual...
  • Page 19: I/O Channel Interface

    3. I/O CHANNEL INTERFACE I/O CHANNEL I/O CHANNEL INTERFACE 3.1. I/O CHANNEL The PC system bus has available several slots for interfacing I/O cards such as the PC46. The AT has an additional connector to make available the 16 bit data bus and additional address lines.
  • Page 20: Clock And Osc Lines

    I/O CHANNEL 3. I/O CHANNEL INTERFACE TABLE 3-1 CONTROL LINE DESCRIPTION SIGNAL DESCRIPTION This is a low level active signal used to write data from MEMW* the system bus into memory and is thus not used by the PC46 This is a low level active signal used to read data from MEMR* memory to the system bus and is thus not used by the PC46...
  • Page 21: Address Selection

    3. I/O CHANNEL INTERFACE ADDRESS SELECTION TABLE 3-2 I/O CHANNEL CONNECTOR PIN LIST DESCRIPTION DESCRIPTION Ground IO CH CK* Reset Drive +5VDC IRQ2 -5VDC DRQ2 -12VDC Unused +12VDC Ground IO CH RDY MEMW* MEMR* IOW* IOR* DACK3* DRQ3 DACK1* DRQ1 *REFRESH IRQ7 IRQ6...
  • Page 22 ADDRESS SELECTION 3. I/O CHANNEL INTERFACE TABLE 3-3 ISA / E-ISA BUS PIN IDENTIFICATION (J13) DESCRIPTION DESCRIPTION MEMCS16* SBHE* IOCS16* LA23 IRQ10 LA22 IRQ11 LA21 IRQ12 LA20 IRQ15 LA19 IRQ14 LA18 DACK0* LA17 DRQ0 MEMR* DACK5* MEMW* DRQ5 DACK6* DRQ6 SD10 DACK7* SD11...
  • Page 23: Using Interrupts

    3. I/O CHANNEL INTERFACE USING INTERRUPTS 3.3. USING INTERRUPTS Full interrupt capability is provided by the PC46 in accordance with the I/O channel specification. Interrupts for input buffer full (IBF), transmit buffer empty (TBE), overtravel fault and operation complete are provided. Interrupt levels 2-7, 10-12, 14&15 are jumper selectable at J14.
  • Page 24: Interrupt Control Register

    This may be performed at any time by a write to this register. The register may be read back to verify or determine the state of the interrupts. (See Table 3-7) NOTE: There is no provision for using DMA Mode in the PC46 Family. TABLE 3-7 I/O REGISTER DESCRIPTION NAME CONTROL DESCRIPTION Interrupt enable bit.
  • Page 25: Power Supply Requirements

    3. I/O CHANNEL INTERFACE POWER SUPPLY REQUIREMENTS TABLE 3-8 STATUS REGISTER DESCRIPTION NAME STATUS DESCRIPTION IRQ_S Interrupt request status. Transmit buffer empty status. This high true bit indicates a character TBE_S may be written to the transmit buffer. Input buffer full status. This high true bit indicates a character is IBF_S available in the input buffer.
  • Page 26 POWER SUPPLY REQUIREMENTS 3. I/O CHANNEL INTERFACE PC46 User’s Manual...
  • Page 27: Driver Interface

    4. DRIVER INTERFACE OUTPUT CONNECTIONS DRIVER INTERFACE 4.1. OUTPUT CONNECTIONS Table 4-1 and Table 4-2 list the input and output interface signals available at output connector J69 on each PC46 board. The connector uses 0.025 inch square posts on 0.10 by 0.10 inch centers.
  • Page 28 OUTPUT CONNECTIONS 4. DRIVER INTERFACE The pin numbering on J69 is as follows: View looking into J69 Pin 50 Pin 1 Pin 26 Pin 25 FIGURE 4-1 J69 PIN ORIENTATION NOTE: The view in Figure 4-1 is looking into J69 with the component side of the PC46 on the left and the solder side on the right.
  • Page 29 4. DRIVER INTERFACE OUTPUT CONNECTIONS TABLE 4-1 CONNECTOR PIN ASSIGNMENTS MODEL PC46-21, -22, -41, -42 BOARDS FUNCTION FUNCTION User I/O Output Bit 0 **** +5VDC User I/O Output Bit 2 User I/O Output Bit 1 User I/O Output Bit 4 User I/O Output Bit 3 User I/O Output Bit 6 User I/O Output Bit 5...
  • Page 30: Multi-Axis Synchronization

    MULTI-AXIS SYNCHRONIZATION 4. DRIVER INTERFACE TABLE 4-2 CONNECTOR PIN ASSIGNMENTS MODEL PC46-6 BOARDS FUNCTION FUNCTION Sync 1 Output Sync 0 Input U Step Output +5 Volts U Auxiliary Output U Direction Output U Negative Limit Switch Ground U Home Switch U Positive Limit Switch V Step Output +5 Volts...
  • Page 31: Limit And Home Lines

    4. DRIVER INTERFACE LIMIT AND HOME LINES DRIVE PC46 Step Step/Clock Direction Direction +5 Supply Opto+5 Input Ground Ground (Opto) FIGURE 4-2 CONNECTION TO STEP DRIVES 4.3. LIMIT AND HOME LINES The limit and home lines can be activated using mechanical switches using contact closures or other suitable active switches, such as a Hall effect switch or opto-isolator, that connect the line to ground.
  • Page 32 FUSED PROTECTION 4. DRIVER INTERFACE This page intentionally left blank PC46 User’s Manual...
  • Page 33: Encoder Option

    5. ENCODER OPTION INTRODUCTION ENCODER OPTION 5.1. INTRODUCTION The encoder feedback option is intended primarily for applications where desired positional accuracy exceeds the accuracy of the mechanical drive components, such as lead screws, or position feedback is required to detect motor slip or stall. The encoder option accepts quadrature pulse outputs from high resolution optical encod- ers.
  • Page 34 ENCODER INTERFACE 5. ENCODER OPTION TABLE 5-1 J69 ENCODER INPUT AND OUTPUT PIN ASSIGNMENT FUNCTION FUNCTION Sync 1 Input Sync 0 Input X Index + +5 Volts X Phase A - X Phase A + X Index - Ground X Phase B - X Phase B + Y Index + +5 Volts...
  • Page 35: Home Procedures

    5. ENCODER OPTION HOME PROCEDURES If single ended encoders are used, the unused line receiver inputs must be biased in the middle of the voltage swing of the active output. J86 is provided with a built in bias supply. The appropriate unused inputs should be connected to the +1.5VDC supply as needed. Reference Figure 3-1 for the pin definition of J86.
  • Page 36 HOME PROCEDURES 5. ENCODER OPTION This page intentionally left blank PC46 User’s Manual...
  • Page 37: Command Structure

    The following commands in this section are included in the PC46 family of controllers. All the commands are two ASCII characters and may be in upper or lower case. Some of the commands expect a numerical operand to follow.
  • Page 38: Command Queues

    The following commands are available in firmware revision 3.08 and above. 6.3. COMMAND SUMMARY The following commands are included in the PC46 family of motor controllers. The ‘#’ indicates a signed integer input parameter or a signed fixed point number of the format ##.# when user units are enabled.
  • Page 39 6. COMMAND STRUCTURE COMMAND SUMMARY COMMANDS IN CHAPTER 6 SECTION COMMAND COMMAND DESCRIPTION PAGE NUMBER reset) Any following commands are for the Y axis Any following commands are for the Z axis 6-19, 6-70 Set selected I/O bit high (off) 6-19, 6-70 Set selected I/O bit low (on) 6-20...
  • Page 40 COMMAND SUMMARY 6. COMMAND STRUCTURE COMMANDS IN CHAPTER 6 SECTION COMMAND COMMAND DESCRIPTION PAGE NUMBER 6-43 Interrupt host when done and set done flag 6-43 Interrupt independent 6-44 Interrupt when nearly done 6-44, 6-59 Interrupt when in position 6-60 Interrupt slip, interrupts host on slip or stall detection 6-31 Jog the current axis at fractional rates Jog command, run motor at specified velocity until a new...
  • Page 41 6. COMMAND STRUCTURE COMMAND SUMMARY COMMANDS IN CHAPTER 6 SECTION COMMAND COMMAND DESCRIPTION PAGE NUMBER Return status of switches and flags for all axes and reset 6-52 flags 6-61 Return slip status of each axis Return remainder of position divided by parameter in 6-28 position counter 6-49...
  • Page 42: Axis Specification Commands

    AXIS SPECIFICATION COMMANDS 6. COMMAND STRUCTURE 6.4. AXIS SPECIFICATION COMMANDS The following commands set the context to direct the commands which follow to the appropriate axis. They remain in effect until superseded by another command of the same type, specifying a different axis. AXES ALL The AA command will perform a context switch to coordinated moves.
  • Page 43 6. COMMAND STRUCTURE AXIS SPECIFICATION COMMANDS AXIS X The AX command sets the context to direct all the following commands to the X axis. This is the default mode at power up or reset. QUEUE REQUIREMENTS MODE AX - AV Immediate AA,AM Immediate...
  • Page 44 AXIS SPECIFICATION COMMANDS 6. COMMAND STRUCTURE AXIS Z The AZ command sets the context to direct all the following commands to the Z axis. QUEUE REQUIREMENTS MODE AX - AV Immediate AA,AM Immediate AA/CD Not valid Example: Move the Z axis 2,000 steps at a rate of 500 steps/second. Enter: AZ VL500 MR2000 GO AXIS T...
  • Page 45 6. COMMAND STRUCTURE AXIS SPECIFICATION COMMANDS AXIS U The AU command sets the context to direct all the following commands to the U axis. QUEUE REQUIREMENTS MODE AX - AV Immediate AA,AM Immediate AA/CD Not valid Example: Set the U axis position register to -56789. Enter: AU LP-56789 AXIS V...
  • Page 46: System Control Commands

    SYSTEM CONTROL COMMANDS 6. COMMAND STRUCTURE 6.5. SYSTEM CONTROL COMMANDS These commands allow control of various system parameters and operating modes to allow the user to optimize the response of the system for application needs. ECHO ON The EN command enables echoing. All commands and parameters will be echoed to the host.
  • Page 47 6. COMMAND STRUCTURE SYSTEM CONTROL COMMANDS HOME HIGH The HH command sets the sense of the home switch on the current axis to active high. This allows the use of a normally closed switch. QUEUE REQUIREMENTS MODE AX - AV AA,AM Not valid AA/CD...
  • Page 48 SYSTEM CONTROL COMMANDS 6. COMMAND STRUCTURE LIMITS OFF The LF command turns off the limit switches for the addressed axis. This allows the stage to move beyond the limit switch and should be used with caution. QUEUE REQUIREMENTS MODE AX - AV AA,AM Not valid AA/CD...
  • Page 49 6. COMMAND STRUCTURE SYSTEM CONTROL COMMANDS SOFT LIMIT The SL command changes the operation of the limit inputs causing the output pulse train to ramp down instead of terminating immediately. The output queue is not flushed except for the current move. This mode is effective for point to point moves only.
  • Page 50 SYSTEM CONTROL COMMANDS 6. COMMAND STRUCTURE COSINE ON The CN command enables cosine velocity ramps, i.e. half sinusoid acceleration profiles for all axes. The cosine is not truncated in moves that do not reach full speed. See Section 1 for an explanation of velocity profiles. This command should not be given while an axis is in motion or the results may not be predictable.
  • Page 51 6. COMMAND STRUCTURE SYSTEM CONTROL COMMANDS PARABOLIC OFF The PF command restores all axes to linear acceleration and deceleration ramps. This is the default mode at power up or reset. See Section 1 for an explanation of velocity profiles. This command should not be given while an axis is in motion or the results may not be predictable.
  • Page 52: User I/O Commands

    USER I/O COMMANDS 6. COMMAND STRUCTURE 6.6. USER I/O COMMANDS The following commands are for accessing the bit I/O functions of the board. See also the SW and WS commands. AUXILIARY ON The AN command turns on the selected auxiliary output ports. That is, it allows the open collector line to be pulled high by an external pull up resistor.
  • Page 53 6. COMMAND STRUCTURE USER I/O COMMANDS AUXILIARY OFF The AF command turns off the selected auxiliary outputs. That is, it causes the open collector line to be driven low. The AF command may be used to change power level on driver modules so equipped or as a user specified output. Same parameter rules apply as the AN command.
  • Page 54 USER I/O COMMANDS 6. COMMAND STRUCTURE POWER AUTOMATIC The PA command will turn on or off the auxiliary outputs at the beginning of each GO or GD command execution and complement the outputs after the move is executed. The auxiliary will be turned on, i.e. pulled high, upon the execution of the GO or GD and off at the end of that move, if the parameter is zero or not specified in the single axis mode.
  • Page 55 6. COMMAND STRUCTURE USER I/O COMMANDS BIT LOW The BL command sets the selected general purpose output on (i.e. logic low). This command is not available on the PC46-2E, -4E and -6 models. QUEUE REQUIREMENTS MODE AX - AV AA,AM AA/CD Not valid Example:...
  • Page 56 USER I/O COMMANDS 6. COMMAND STRUCTURE BIT REQUEST IN HEX The BX command returns the state of the general purpose input bits in a two digit hex format, surrounded by line feed and carriage return pairs. A one in any binary position signals that bit as being low.
  • Page 57: Move Specification Commands

    6. COMMAND STRUCTURE MOVE SPECIFICATION COMMANDS 6.7. MOVE SPECIFICATION COMMANDS These commands allow specification of move parameters. They allow move parameters to be tailored to the user’s system requirements. ACCELERATION The AC command sets the acceleration/deceleration register to the operand which follows the command.
  • Page 58 MOVE SPECIFICATION COMMANDS 6. COMMAND STRUCTURE VELOCITY The VL command sets the maximum velocity register of the axis being programmed to the operand which follows the command. The operand must be greater than zero and less than or equal to 522,000 steps per second. velocity defaults to 100,000 at power up or reset.
  • Page 59 6. COMMAND STRUCTURE MOVE SPECIFICATION COMMANDS VELOCITY BASE The VB command allows the velocity ramp to start at the specified velocity. This allows faster acceleration and the ability to pass through resonance quickly in some applications. The velocity jumps instantly to the specified velocity, then ramps as usual.
  • Page 60 MOVE SPECIFICATION COMMANDS 6. COMMAND STRUCTURE MOVE ABSOLUTE The MA command will set up the axis to move to the absolute position supplied as a parameter. The default value of zero is used if no parameter is supplied in the single axis mode.
  • Page 61 6. COMMAND STRUCTURE MOVE SPECIFICATION COMMANDS MOVE RELATIVE The MR command will set up the axis to move relative from the current position at the time the move is executed. In the AA mode, an axis may remain stationary by entering a comma but omitting the parameter.
  • Page 62 MOVE SPECIFICATION COMMANDS 6. COMMAND STRUCTURE ML#,#; MOVE LINEAR The ML command uses linear interpolation to perform a straight line relative move to the new location. Input parameters are relative distance for each axis in the move. Velocity and acceleration parameters of each axis may be automatically adjusted by the PC46 controller to perform the linear move.
  • Page 63 6. COMMAND STRUCTURE MOVE SPECIFICATION COMMANDS MT#,#; MOVE TO The MT command uses linear interpolation to move to the specified absolute position. The syntax is similar to the ML command. This command is invalid while in the CN mode, if loops are being used. The command will become valid again after executing an ST or KL command.
  • Page 64 MOVE SPECIFICATION COMMANDS 6. COMMAND STRUCTURE REMAINDER The RM command will divide the position counter by the parameter supplied and replace the position counter with the resulting remainder. The parameter must be greater than zero and less than 65,000. This command is used in applications where the controller is managing the motion of a continuously rotating object.
  • Page 65: Move Execution Commands

    6. COMMAND STRUCTURE MOVE EXECUTION COMMANDS 6.8. MOVE EXECUTION COMMANDS These commands allow execution of the moves that have been previously specified. The GO command will initiate the move which has been previously programmed with such commands as MA, MR, MT, and ML. No operand is required with the GO command.
  • Page 66 MOVE EXECUTION COMMANDS 6. COMMAND STRUCTURE GO AND RESET DONE The GD command may be substituted for a GO command. It will reset the done flags, then initiate the move which has been previously programmed with such commands as MA, MR, MT, and ML; just as the GO command does. In the single axis mode, only the done flag for the selected axis will be reset.
  • Page 67 6. COMMAND STRUCTURE MOVE EXECUTION COMMANDS The JG command is a velocity mode and will step the axis at the velocity supplied as a parameter. The JG command will accelerate to the programmed velocity and run until altered by a ST, SA, KL or another JG command. The jog velocity may be changed by following the command with another JG command of a different velocity.
  • Page 68 MOVE EXECUTION COMMANDS 6. COMMAND STRUCTURE VS#,#,# VELOCITY STREAMING The VS command will generate a pulse train without acceleration or deceleration at the rates specified. The parameters are time in 1/1024 second sample intervals, X velocity, and Y velocity. This is a slave mode and cannot be mixed or queued with other commands.
  • Page 69: Move Termination Commands

    6. COMMAND STRUCTURE MOVE TERMINATION COMMANDS 6.9. MOVE TERMINATION COMMANDS The following commands allow termination of move sequences in process. STOP The ST command flushes the queue for the current axis only, in the single axis mode, and causes the axis to decelerate to a stop at the rate previously specified in an AC command.
  • Page 70 MOVE TERMINATION COMMANDS 6. COMMAND STRUCTURE STOP AND RESET DONE The SD command may be substituted for the SA command. It will reset the done flags, then proceed to stop all axes. This allows the host to be interrupted when all axes have stopped by using the ID command after the SD.
  • Page 71: Loop Control Commands

    6. COMMAND STRUCTURE LOOP CONTROL COMMANDS 6.10. LOOP CONTROL COMMANDS These commands allow move sequences to be repeated within loops. Loops can be nested up to four levels deep on each axis. LOOP START The LS command sets the loop counter for the axis being programmed in the single axis mode and all axes in the AA mode.
  • Page 72 LOOP CONTROL COMMANDS 6. COMMAND STRUCTURE NOTE: The first move will occur immediately after entering the GO command. The remaining 4 moves will be executed after the loop terminator LE has been entered. Example: Execute a 100,000 count move relative on the X axis together with a 100 count move on the T axis, followed by a move absolute to 100 counts on the X axis and 200 counts on the T axis, four times.
  • Page 73 6. COMMAND STRUCTURE LOOP CONTROL COMMANDS WHILE SYNC The WS command will execute the commands between the WS and WD commands as a loop while the specified general purpose input line is true, i.e. low. When the line goes high it will exit the loop and execute the commands which follow.
  • Page 74 LOOP CONTROL COMMANDS 6. COMMAND STRUCTURE WHILE The WH command will execute all commands between it and the terminating WG command as a loop until terminated by a CW command. This allows repeated execution of a command sequence which can be terminated by the host. These commands may not be nested but may be executed sequentially.
  • Page 75 6. COMMAND STRUCTURE LOOP CONTROL COMMANDS WHILE FLAG The WG command serves as the terminator for the WH command. QUEUE REQUIREMENTS MODE AX - AV AA,AM AA/CD Not valid Example: (see WH command on page 6-38) CLEAR WHILE The CW command breaks the WH command upon execution of the remaining commands in the loop, i.e.
  • Page 76: Home And Initialization Control Commands

    HOME AND INITIALIZATION CONTROL COMMANDS 6. COMMAND STRUCTURE 6.11. HOME AND INITIALIZATION CONTROL COMMANDS These commands allow the initialization of the physical stage with the controller. HOME The HM command will cause the current axis to step in the positive direction at the predefined velocity, until the home input line goes true.
  • Page 77 6. COMMAND STRUCTURE HOME AND INITIALIZATION CONTROL COMMANDS HOME REVERSE The HR command will cause the current axis to step in the negative direction at the predefined velocity, until the home input line goes true. It behaves exactly like the HM command, except it travels in the reverse direction. The parameter defaults to zero if none is supplied.
  • Page 78 HOME AND INITIALIZATION CONTROL COMMANDS 6. COMMAND STRUCTURE HOME REVERSE AND KILL The KR command will find home in reverse and stop generating pulses immediately, i.e. no deceleration ramp will be generated. The position counter is not affected.. Due to motor and platform inertia, the load and board may lose position synchronization.
  • Page 79: Move Synchronization Commands

    6. COMMAND STRUCTURE MOVE SYNCHRONIZATION COMMANDS 6.12. MOVE SYNCHRONIZATION COMMANDS These commands allow the synchronization of moves with external events or multiple axis sequences. INTERRUPT DONE The ID command will set the done flag and interrupt the host if the interrupt has been enabled.
  • Page 80 MOVE SYNCHRONIZATION COMMANDS 6. COMMAND STRUCTURE INTERRUPT NEARLY DONE The IN command allows the control to interrupt the host when the axis or combination of axes is nearly complete. When used in an application involving probing a part after a move, the probes could start accelerating down while the stage is finishing its move, improving the overall system throughput.
  • Page 81 6. COMMAND STRUCTURE MOVE SYNCHRONIZATION COMMANDS INTERRUPT CLEAR The IC or the ASCII character Control-Y (hex 19) command is used to clear the done and error flags in the status register and the done flag register, otherwise the axis would always appear to be “done”. This command will be executed immediately and will usually be placed in the done and error handler interrupt service routine to clear the interrupt and the associated flags.
  • Page 82 MOVE SYNCHRONIZATION COMMANDS 6. COMMAND STRUCTURE WAIT FOR AXES The WA command, only valid in the AA mode, allows a command to wait until all moves on all axes are finished before it executes. Some commands which can affect a non-moving axis, such as AN, AF and PA, may execute before a previous move on other axes has finished, especially while in the looping (LS-LE, WH-WG) mode.
  • Page 83 6. COMMAND STRUCTURE MOVE SYNCHRONIZATION COMMANDS SYNC WAIT The SW command allows synchronization of multi-axis moves or other tasks on one or more PC46 boards by using one of the general purpose input lines. This command causes the axes to wait until the general purpose input line has been released (allowed to go high) before proceeding with the next command.
  • Page 84 MOVE SYNCHRONIZATION COMMANDS 6. COMMAND STRUCTURE WAIT The WT command will wait for the specified number of milliseconds before proceeding with the next command in the queue. In the AA mode, all axes will wait. Immediate commands will not “wait”. The parameter must be between 1 and 32,000.
  • Page 85: System Status Request Commands

    6. COMMAND STRUCTURE SYSTEM STATUS REQUEST COMMANDS 6.13. SYSTEM STATUS REQUEST COMMANDS These commands allow the host to request the status of various move parameters, including the status of limit and home switches. WHO ARE YOU The WY command returns the model type, firmware revision number, and number of controlled axes of the board being addressed, surrounded by line feeds and carriage returns.
  • Page 86 SYSTEM STATUS REQUEST COMMANDS 6. COMMAND STRUCTURE REQUEST QUEUE STATUS The RQ command returns the number of entries available in the queue of the currently addressed axis, in the single axis mode, or all axes separated by commas, in the AA or AM modes. The ASCII string is surrounded by line feeds and carriage returns.
  • Page 87 6. COMMAND STRUCTURE SYSTEM STATUS REQUEST COMMANDS REQUEST AXIS STATUS The RA command returns the state of the limit and home switches, and the done and direction flags for the currently addressed axis. The limit flag in the hardware status register will be reset by the RA command, providing another axis is not in limit.
  • Page 88 SYSTEM STATUS REQUEST COMMANDS 6. COMMAND STRUCTURE REQUEST INTERRUPT STATUS The RI command is an AA mode command that returns the same status information on all axes as the RA command in the single axis mode. The 4 character fields for each axis are separated by commas and the string has one line feed and two carriage returns on each end.
  • Page 89 6. COMMAND STRUCTURE SYSTEM STATUS REQUEST COMMANDS QUERY INTERRUPT STATUS The QI command returns the same information for all axes when in the AA mode, as the QA command does in the single axis mode. The 4 character fields for each axis are separated by commas and the string has one line feed and two carriage returns on each end.
  • Page 90 SYSTEM STATUS REQUEST COMMANDS 6. COMMAND STRUCTURE REQUEST VELOCITY The RV command will return the current velocity at which the axis is moving. This may differ from the programmed velocity if the axis is ramping up to speed or stopping. The response is surrounded by line feed and carriage return pairs. If the JF command is executing, the command only reports the integer part of the velocity.
  • Page 91: User Unit Commands

    6. COMMAND STRUCTURE USER UNIT COMMANDS 6.14. USER UNIT COMMANDS The following commands allow specification of move parameters in user defined units. The OMS controls will automatically convert all move parameters to these units once they have been initialized. USER UNITS The UU command converts all move velocities, distances, etc.
  • Page 92: Position Maintenance Commands

    POSITION MAINTENANCE COMMANDS 6. COMMAND STRUCTURE 6.15. POSITION MAINTENANCE COMMANDS ER#,# ENCODER RATIO The ER command allows specification of encoder ratio by entering encoder counts, followed by motor counts, for position maintenance mode. These counts must be integers unless user units are enabled. The ratio of encoder counts to motor counts must be equal to one, i.e.
  • Page 93 6. COMMAND STRUCTURE POSITION MAINTENANCE COMMANDS HOLD GAIN The HG command allows the user to specify position hold gain parameter. This gain parameter is multiplied by the position error in determining the velocity during correction. The parameter must be between 1 and 32,000. The parameter should be set experimentally by increasing it until the system is unstable then reducing it slightly below the threshold of stability.
  • Page 94 POSITION MAINTENANCE COMMANDS 6. COMMAND STRUCTURE HOLD OFF The HF command disables position hold, stall detection and tracking modes. This is the default mode at power up or reset. QUEUE REQUIREMENTS MODE NO ENCODER ENCODER AX - AY Not valid AZ –...
  • Page 95 6. COMMAND STRUCTURE POSITION MAINTENANCE COMMANDS INTERRUPT WHEN IN POSITION The IP command operates like the ID command, except the interrupt is deferred until the stage is within the specified deadband. The GD command should be used in place of the GO command to reset the done flags before the next move. If the position hold HN is not enabled for an axis, the command will behave like an ID command for that axis.
  • Page 96: Slip And Stall Detection Commands

    SLIP AND STALL DETECTION COMMANDS 6. COMMAND STRUCTURE 6.16. SLIP AND STALL DETECTION COMMANDS ENCODER SLIP TOLERANCE The ES command parameter specifies tolerance before slip or stall is flagged in the status register and by the RL command. The mode must be turned on with an IS command and off with an HF command.
  • Page 97 6. COMMAND STRUCTURE SLIP AND STALL DETECTION COMMANDS RETURN SLIP STATUS The RL command returns the slip detection status of each axis. An S is returned if slip has occurred for that axis, or else an N is returned. The results are bounded by an LF CR pair, as in other status commands.
  • Page 98: Encoder Tracking Commands

    ENCODER TRACKING COMMANDS 6. COMMAND STRUCTURE 6.17. ENCODER TRACKING COMMANDS ENCODER TRACKING The ET command turns on the encoder tracking mode. The axis will track its encoder input, thus allowing one axis to follow the activity of another or a thumbwheel for manual positioning or the movement of another device that produces a signal compatible to the encoder inputs.
  • Page 99: Encoder Home Control Commands

    6. COMMAND STRUCTURE ENCODER HOME CONTROL COMMANDS 6.18. ENCODER HOME CONTROL COMMANDS HOME ENCODER The HE command enables encoder index mode when an HM or HR command is executed. Home is defined as the logical AND of the encoder index, the external home enable and the encoder quadrant where channel A is positive and channel B is negative.
  • Page 100: Encoder Status Request Commands

    ENCODER STATUS REQUEST COMMANDS 6. COMMAND STRUCTURE 6.19. ENCODER STATUS REQUEST COMMANDS ENCODER STATUS The EA command returns encoder status of the currently addressed axis in the following format: EA COMMAND RESPONSE DESCRIPTION CHAR SENT DESCRIPTION Line feed Carriage return Carriage return Slip detection enabled Slip detection disabled...
  • Page 101 6. COMMAND STRUCTURE ENCODER STATUS REQUEST COMMANDS REQUEST ENCODER POSITION The RE command returns current encoder position of the currently addressed axis in encoder counts. The ASCII string is surrounded by line feed and carriage return pairs. QUEUE REQUIREMENTS MODE NO ENCODER ENCODER AX - AY...
  • Page 102: Velocity Staircase Commands

    VELOCITY STAIRCASE COMMANDS 6. COMMAND STRUCTURE 6.20. VELOCITY STAIRCASE COMMANDS The following commands describe the velocity staircase mode. This mode is useful in applications requiring a change in velocity at a prescribed position without stopping. MOVE POSITIVE The MP command sets the direction logic to move in the positive direction. QUEUE REQUIREMENTS MODE AX - AV...
  • Page 103 6. COMMAND STRUCTURE VELOCITY STAIRCASE COMMANDS MV#,# MOVE VELOCITY The MV command causes the motor to run to the new absolute position (parameter 1) at the new velocity (parameter 2). When the destination is reached control will be passed to the next command which should be another MV command or an SP command.
  • Page 104 VELOCITY STAIRCASE COMMANDS 6. COMMAND STRUCTURE STOP AT POSITION The SP command will cause the axis to stop at the specified position. controller will attempt to stop at the specified destination. If there is insufficient distance to stop at the previously specified deceleration when the command is received, the controller will stop as soon as possible at that deceleration.
  • Page 105: Constant Velocity Contouring

    6. COMMAND STRUCTURE CONSTANT VELOCITY CONTOURING 6.21. CONSTANT VELOCITY CONTOURING The PC46 will attempt to generate any profile which it is asked to do. It is the responsibility of the host to be sure the acceleration required when generating a circle or any other change in direction is possible within the mechanical constraints of the system.
  • Page 106 CONSTANT VELOCITY CONTOURING 6. COMMAND STRUCTURE BIT LOW The BL command sets the selected general purpose output on (i.e. logic low). This command is not available on the PC46-2E, -4E and -6 models. QUEUE REQUIREMENTS MODE AX - AV AA,AM AA/CD Example: (see the following BH command)
  • Page 107 6. COMMAND STRUCTURE CONSTANT VELOCITY CONTOURING CD#,#; CONTOUR DEFINE The CD command enters contour definition mode. It allows entry of commands for contouring mode. Commands are queued for execution by the CX command. The parameters define the axes for which the contour is defined and the starting position of the contour in absolute units.
  • Page 108 CONSTANT VELOCITY CONTOURING 6. COMMAND STRUCTURE CONTOUR END The CE command marks the end of the contour sequence. It will terminate the CD mode, ramp to a stop and exit to the AA command mode when executed. The end of the contour should contain at least a short linear segment just prior to the CE command to initialize the parameters for the deceleration of the stage.
  • Page 109 6. COMMAND STRUCTURE CONSTANT VELOCITY CONTOURING CR#,#,# CIRCULAR INTERPOLATION The CR command defines a move in a circular pattern from the entry position. The first two parameters are the center of the circle in absolute units and the third parameter is the distance to move in radians. Positive radians equal counter clockwise movement.
  • Page 110 CONSTANT VELOCITY CONTOURING 6. COMMAND STRUCTURE CONTOUR EXECUTE The CX command will execute the previously entered contour sequence. The stage must be positioned such that it can accelerate to speed by the absolute position specified by the CD command it is executing and must be traveling in the proper direction.
  • Page 111 6. COMMAND STRUCTURE CONSTANT VELOCITY CONTOURING REQUEST QUEUE STATUS The RQ command returns the number of entries available in the contouring queue. There is no contouring queue for the PC46-21 and -41 models. QUEUE REQUIREMENTS MODE AX - AV Immediate AA,AM Immediate AA/CD...
  • Page 112 CONSTANT VELOCITY CONTOURING 6. COMMAND STRUCTURE This page intentionally left blank PC46 User’s Manual 6-76...
  • Page 113: Host Software

    HOST SOFTWARE 7.1. INTRODUCTION The support software disk for Oregon Micro Systems PC family boards is supplied with the initial purchase of an OMS PC family board. This disk contains several programs which allow the user to interact with the OMS PC family of motion control boards so they can become familiar with their instruction sets.
  • Page 114: Command Line Options

    DRIVER SUPPORT 7. HOST SOFTWARE 7.3.2. COMMAND LINE OPTIONS There are several command line options to configure the device driver to the user's needs. They are as follows: A:XXX where XXX is the hexadecimal I/O ADDRESS to which the Oregon Micro System board is jumpered.
  • Page 115: Board Status Message Handling

    7. HOST SOFTWARE DRIVER SUPPORT Example: device=omsdrive.sys N:MYNAME ; (the new file (device) name you will use when talking to the driver is MYNAME) This SOUND option causes the device driver to produce a "POCK" sound using the computer's speaker whenever a DONE, LIMIT, SLIP, or COMMAND ERROR interrupt occurs.
  • Page 116: Interfacing To The Device Driver

    DRIVER SUPPORT 7. HOST SOFTWARE The * character allows the user to place comments into a command file. All characters following the * up to the next control character (<LF>, <CR>, <TAB>, et cetera) are ignored by the device driver and are not passed to the controller.
  • Page 117 7. HOST SOFTWARE DRIVER SUPPORT When sending response producing commands to the board (an RP for example), there is a certain amount of lag time before the full response is available from the device driver. The faster the computer, the more evident the lag time is. The lag time can cause an 'OUT OF DATA' DOS error if it is not handled correctly.
  • Page 118: Multiple Boards In One Computer

    DRIVER SUPPORT 7. HOST SOFTWARE 7.3.6. MULTIPLE BOARDS IN ONE COMPUTER By jumpering the boards correctly and using the command line options listed above, it is possible to put more than one board into a computer. If the serial and parallel ports of the computer are not using the other IRQ you could put up to FOUR boards into one computer, allowing up to 24 axes of interrupt driven motion control in one computer.
  • Page 119: Service

    USER SERVICE SERVICE 8.1. USER SERVICE The PC46 family of controllers contain no user serviceable parts. 8.2. THEORY OF OPERATION The 68332 microprocessor on the PC46 controllers maintains four concurrent processes. The highest priority process calculates the desired pulse frequency 1024 times each second (512 times each second for -21 and -41 models) with a proprietary algorithm (patent number 4,734,847).
  • Page 120 THEORY OF OPERATION 8. SERVICE This page intentionally left blank PC46 User’s Manual...
  • Page 121 The Seller warrants that the articles furnished are free from defect in material and workmanship and perform to applicable, published Oregon Micro Systems, Inc. specifications for one year from date of shipment. This warranty is in lieu of any other warranty express or implied.
  • Page 122 LIMITED WARRANTY APPENDIX A This page intentionally left blank PC46 User’s Manual...
  • Page 123 APPENDIX B TECHNICAL SUPPORT APPENDIX B. TECHNICAL SUPPORT Oregon Micro Systems , Inc. can be reached for technical support by any of the following methods: 1. Internet E-Mail: support@omsmotion.com 2. World Wide Web: www.omsmotion.com 3. Telephone: 8:00 a.m. - 5:00 p.m. Pacific Standard Time (503) 629-8081 or (800) 707-8111 4.
  • Page 124 RETURN FOR REPAIRS APPENDIX B This page intentionally left blank PC46 User’s Manual...
  • Page 125 TTL input levels with on-board 2.2K pull up resistor, requires only external switch closure to ground or TTL level input signal. Input sense (low or high true) selectable by on-board jumper for each axis. OMS PC46 FAMILY OF INTELLIGENT MOTION CONTROLS STEPPER AXES SERVO USER MODEL...
  • Page 126 SPECIFICATIONS APPENDIX C CONTROL REGISTER BIT ASSIGNMENTS STATUS REGISTER BIT ASSIGNMENTS DESCRIPTION DESCRIPTION Unused Command error Unused Initializing (A 1 while initializing) Unused Encoder slip Unused Overtravel Done or error interrupt enable Done or error flag set Input buffer full interrupt enable Input buffer full Transmit buffer empty interrupt enable Transmit buffer empty...
  • Page 127 INDEX INDEX +5VDC............................2-6 68332 ........................1-1, 1-2, 3-7, 8-1 AA............................6-1, 6-6 AC ...............................6-21 ACCELERATION ......................1-1, 1-2, 6-21 Controlled ..........................1-1 Curve ............................1-2 Address ............................2-2 AF............................6-17, 6-69 AM ............................6-1, 6-6 AN ............................6-16, 6-69 ASCII ............................1-1, 6-1 AT..............................6-8 AU ..............................6-9 Auxiliary..........................2-6, 4-1 AUXILIARY OFF ........................6-17, 6-69 AUXILIARY ON ........................6-16, 6-69 AV..............................6-9...
  • Page 128 INDEX APPENDIX C CA ...............................6-45 CD ...............................6-71 CE ...............................6-72 Character buffer ..........................1-3 CIRCULAR INTERPOLATION.....................6-1, 6-73 CK ...............................6-72 CLEAR AXIS DONE FLAG ......................6-45 CLEAR WHILE..........................6-39 Clock and OSC lines ........................3-3 CMD_S............................3-8 CN ...............................6-14 Command queues........................1-3, 6-2 Command stream..........................4-2 Command structure......................6-1–6-75 Command summary.......................6-2–6-5 Constant velocity ...........................1-1 Constant velocity contouring ..................
  • Page 129 INDEX EA..............................6-64 ECHO OFF..........................6-10 ECHO ON............................6-10 EF..............................6-10 EN ...............................6-10 ENC_S ............................3-8 Encoder count ..........................5-1 Encoder feedback .........................5-1 Encoder home control commands ....................6-63 Encoder interface ........................5-2–5-4 Encoder option ....................... 2-6, 5-1–5-4 ENCODER RATIO ........................6-56 ENCODER SLIP TOLERANCE ....................6-60 ENCODER STATUS ........................6-64 Encoder status request commands ...................6-64–6-65 ENCODER TRACKING.......................6-62 Encoder tracking commands ......................6-62...
  • Page 130 INDEX APPENDIX C HN ...............................6-58 HOLD DEADBAND ........................6-57 HOLD GAIN..........................6-57 HOLD OFF ....................... 6-58, 6-61, 6-62 HOLD ON ............................6-58 HOLD VELOCITY........................6-56 HOME........................... 4-5, 5-4, 6-40 Home and initialization control commands.................6-40–6-42 HOME AND KILL.........................6-41 HOME ENCODER........................6-63 HOME HIGH..........................6-11 HOME LOW ..........................6-11 Home procedures..........................5-4 HOME REVERSE ........................6-41 HOME REVERSE AND KILL ......................6-42...
  • Page 131 INDEX Introduction............................1-1 IOR ..............................3-1 IOW ...............................3-1 IP ............................6-44, 6-59 IS ..............................6-60 J11..............................2-4 J14..............................2-4 J16..............................2-2 J96..............................2-4 JF ..............................6-31 JG..............................6-31 JOG .............................6-31 JOG FRACTIONAL VELOCITIES....................6-31 Jumpers ..........................2-2–2-4 KILL .............................6-34 KL ..............................6-34 KM ...............................6-41 KR ...............................6-42 LE ..............................6-36 LF ..............................6-12 Limit...............................4-5 Limit and home lines ........................4-5 Limit switch............................2-6 LIMITED WARRANTY .........................
  • Page 132 INDEX APPENDIX C Microstepping ..........................1-1 ML ...............................6-26 MM ..............................6-66 MO...............................6-27 Motor control connector.........................2-6 Motor count ...........................5-1 Motor driver ..........................See MOVE ABSOLUTE........................6-24 Move execution commands ....................6-29–6-32 MOVE LINEAR..........................6-26 MOVE MINUS ..........................6-66 MOVE ONE PULSE ........................6-27 MOVE POSITIVE ........................6-66 MOVE RELATIVE ........................6-25 Move specification commands ...................6-21–6-28 Move synchronization commands ..................6-43–6-48 Move termination commands .....................6-33–6-34...
  • Page 133 INDEX PF..............................6-15 PN ...............................6-14 Polled operation ..........................3-7 Position errors ..........................5-1 Position maintenance commands ..................6-56–6-59 Positional accuracy ........................5-1 POWER AUTOMATIC ........................6-18 Power supply requirements....................3-9–3-10 Processes .............................1-2 Profile ............................6-1 Program files ..........................7-1 QA ...............................6-52 QI..............................6-53 Quadrature ............................5-1 Quadrature outputs ........................5-1 QUERY AXIS ..........................6-52 QUERY INTERRUPT STATUS....................6-53 Queues............................8-1 RA ...............................6-51...
  • Page 134 INDEX APPENDIX C RU ...............................6-54 RV ...............................6-54 SA..............................6-33 SD ...............................6-34 SE..............................6-18 Service ............................8-1 SETTLING TIME .........................6-18 SF..............................6-13 SL ..............................6-13 Slip ..............................5-1 Slip and stall detection commands..................6-60–6-61 SOFT LIMIT ..........................6-13 SOFT LIMIT OFF ........................6-13 Software ............................7-1 Software installation ........................2-6 SP..............................6-68 Special Characters ! ...............................7-3 * ............................7-3, 7-5 @ ...............................7-3...
  • Page 135 INDEX UF..............................6-55 User I/O ............................2-4 User I/O commands ......................6-16–6-20 USER OFF ..........................6-55 User service ..........................8-1 User unit commands ........................6-55 USER UNITS..........................6-55 Using interrupts ..........................3-7 UU ...............................6-55 VB..............................6-23 Velocity......................... 1-1, 1-2, 6-22 VELOCITY BASE ........................6-23 Velocity profile ........................1-2–1-7 Cosine..........................1-2–1-5 Linear..........................1-2–1-4 Parabolic..........................1-2–1-4 Velocity staircase commands.....................6-66–6-68 VELOCITY STREAMING ......................6-32 VL ..............................6-22...

Table of Contents