background image

 

 

U

 

Update 

firmware ........................................................44 

User units 

controller time base ....................................160 
description ..................................................159 
machine zero ..............................................161 
output constant ...........................................162 
part zero .....................................................161 
setting .........................................................159 
trajectory time .............................................160 
user scale ...........................................159, 160 

V

 

Vector acceleration ..........................................91 
Vector deceleration ..........................................91 
Vector velocity ..................................................91 
Velocity 

default units ..................................................86 
disable ..........................................................42 
restoring settings ................................122, 129 
set too high ...................................................66 
setting .................................................8, 37, 77 

Velocity gain ...................................................162 
Velocity mode 

enable ...........................................................90 

Velocity mode amplifier ....................................25 

description ............................................71, 120 
tuning ............................................................71 

Velocity mode move 

execution ......................................................90 
setting the direction ......................................90 
starting ..........................................................90 

Velocity profiles 

Contour mode motion ...................................91 
Parabolic.......................................................88 
S-curve .........................................................88 
Trapezoidal...................................................88 

Velocity, maximum 

setting .....................................................67, 86 

Version 

firmware........................................................ 43 
MCAPI .......................................................... 43 

Visual Basic programming ............................... 33 

W

 

Wait 

for 'at target'................................................ 118 
for trajectory complete................................ 117 

Watchdog circuit 

description .................................................. 163 

Watchdog relay 

contacts pin out .......................................... 189 
wiring ............................................................ 64 

Windows 

registry, updating  I/O configuring .............. 167 

Wiring 

+/- 10V command output.............................. 48 
A/D inputs..................................................... 63 
Anplifier Enable output ........................... 52, 54 
Anplifier Fault input ...................................... 55 
closed loop stepper ...................................... 80 
Driver Disable output.............................. 53, 54 
Driver Enable output .................................... 54 
Driver Fault input .......................................... 55 
encoder, differential...................................... 56 
encoder, single ended.................................. 57 
E-stop ......................................................... 125 
home sensor............................................... 105 
home sensor inputs ...................................... 60 
Limit +/- inputs........................................ 58, 59 
limit sensor ................................................. 102 
Opto isolated inputs ......................... 58, 59, 60 
Pulse command output ................................ 51 
PWM command output................................. 49 
servo, analog command......................... 48, 51 
servo, pulse command ................................. 51 
servo, PWM command................................. 49 
stepper, pulse command.............................. 51 
TTL digital inputs .......................................... 61 
TTL digital outputs........................................ 62 
watchdog relay ............................................. 64 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Artisan Technology Group - Quality Instrumentation ... Guaranteed | (888) 88-SOURCE | www.artisantg.com

Summary of Contents for MultiFlex PCI 1000 Series

Page 1: ...service in house repair center WE BUY USED EQUIPMENT Sell your excess underutilized and idle used equipment We also offer credit for buy backs and trade ins www artisantg com WeBuyEquipment REMOTE IN...

Page 2: ...MicroControl Corporation 2075 N Corte del Nogal Carlsbad CA 92009 USA Tel 1 760 930 0101 Fax 1 760 930 0222 www pmccorp com Information info pmccorp com Technical Support support pmccorp com Artisan...

Page 3: ...or installation or consequential damage Copyright Precision Micro Control Corporation 2004 2012 All rights reserved Information in this document is subject to change without notice Intel is a registe...

Page 4: ...the Controller 47 10V Analog Servo Command Connections 48 PWM Pulse Width Modulation Command Connections 49 Pulse Command Connections 51 Amplifier Driver Enable Connections Low Active 52 Driver Disab...

Page 5: ...a move 156 Defining User Units 159 Watchdog Circuit 163 General Purpose I O 165 Digital I O 165 Configuring and Exercising the Digital I O 167 Using the Digital I O 168 A D Inputs 170 Specifications 1...

Page 6: ...eference Manual The latest versions of these documents can be downloaded from the Support section of PMC s web site at www pmccorp com support mfxpci1000 php This user manual applies to all MultiFlex...

Page 7: ...Precision MicroControl Corp 4 Page intentionally left blank Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 8: ...alog servo control models MultiFlex PCI 1400 1440 8 axes PWM servo control model MultiFlex PCI 1802 Up to 4 axes Step Dir CW CCW pulse control models MultiFlex PCI 1040 1440 Coordinated motion interpo...

Page 9: ...trol code as well as user programs A high capacity FPGA interfaces directly with I O such as encoders analog inputs control signals and general purpose I O and provides a great amount of flexibility f...

Page 10: ...ger or real applies to Analog Command Axis Pulse Command Axis see also MR PM These MCCL command sequences cause the motion controller to execute a move to absolute position n Example 1MA1000 Axis 1 mo...

Page 11: ...s Sample programs with full source code are supplied with the MCAPI These C Visual Basic and Delphi sample programs allow the user to move an axis servo or stepper monitor position actual target and o...

Page 12: ...Motion Integrator s Setup Wizards walk the user through the integration process with external components motors encoders sensors The Servo Tuning Utility includes on line help assisting with both usi...

Page 13: ...igure the channel numbers and logical functions of the digital I O The flexibility provided by this unique feature allows more efficient use of I O resources and eases the task of connecting the contr...

Page 14: ...ors or closed loop stepper motors End of travel sensors or limit switches for axes with linear travel A mechanical stage and load In this illustration a stage is mounted on bearings and a lead screw i...

Page 15: ...mits amp enable Stepper Driver Stepper Motor Digital inputs Digital outputs Windows Device Driver Application Programming Interface A D inputs optional Analog inputs 2V to 24V 2V to 24V Timer Interrup...

Page 16: ...ed tasks PID Filter The position feedback loop or PID Proportional Integral Derivative filter is executed every 1000 500 or 250 microseconds 1 2 or 4 kHz depending on the servo loop update rate Low Me...

Page 17: ...sed Loop Stepper Closed Loop Servo position loop closed by the servo amplifier The default format of the pulse command signal pair is Step Direction but it can be configured by the user for Clockwise...

Page 18: ...ages 10 and 165 the user can associate any other digital output with the Amplifier On Off function High speed I O High speed capture and compare signals are also functions provided via the TTL I O Pos...

Page 19: ...and feed forward Report the axis controller status current position target position and many other parameters Provide data or interrupt the host PC based on user defined events Home an axis The contro...

Page 20: ...axis specifier identifying for which axis the operation is intended The following graphic shows the result of issuing the Tell Position aTP command to axis number one Note that each character typed a...

Page 21: ...tion without moving The Tell Target aTT and Tell Position aTP commands should report the same number There are two commands used for basic position mode motion Move Absolute aMAn and Move Relative aMR...

Page 22: ...hat time Many terminals have an auto repeat feature that allows you to track the position of the axis by simply holding down the return key Another way to monitor the progress of a movement is to use...

Page 23: ...he measured following error servo systems are inherently more intuitive than open loop systems The disadvantage to the corrective nature of a servo system is that in order for the PID filter to proper...

Page 24: ...ontrary to many servo applications where the following error of the axis along the entire path is of great concern to the machine designer for many stepper applications the user is only concerned abou...

Page 25: ...ired amount of control Servo tuning is the process in which the gain values are determined From one servo axis to another the gain values will change depending on differences between the motion contro...

Page 26: ...a servo axis use the Servo Tuning program included with PMC s Motion Integrator software For assistance with servo tuning refer to the Motion Control chapter of this manual or view or the PowerPoint S...

Page 27: ...Differential or single ended encoders the controller provides the user with the the option of enabling Encoder Fault detection which will indicate an error upon open circuit short circuit low differen...

Page 28: ...ocity loop A tachometer is used to provide velocity feedback The 10V analog command output from the servo controller provides a velocity command to the amplifier and the servo controller uses Feed For...

Page 29: ...er can the user will gain Increased positioning resolution Increased position accuracy Increased system performance by minimizing resonance Increased velocity resolution As it relates to a stepper mot...

Page 30: ...system is usually defined by the index mark of an encoder For systems that use a rotary encoder where the index mark will be asserted multiple times along the range of travel of the axis a Coarse Hom...

Page 31: ...Motion Control Primer Precision MicroControl Corp 28 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 32: ...cific details are handled by the API leaving the applications programmer free to concentrate on the application program Motion Controller Motion Control API Function Library Low Level Device Driver DL...

Page 33: ...t can use standard Windows components even those that were developed after the Motion Control API Please refer to the Motion Control Application Programming Interface Motion Control API Reference Manu...

Page 34: ...tep velocity dwell time user and part zero Commanding motion Point to Point Constant velocity Electronic Gearing Lines and Arcs Joystick control Reporting controller data motor status position followi...

Page 35: ...constant for 32 bit projects you will need to define it at the top of the source file before the header files are included LIB File Issues Library LIB files are included with MCAPI for all the DLLs th...

Page 36: ...rogram moves and interact with the motion in a number of ways stop it abort it etc Sample forms demonstrate how to configure servo or stepper motor axes A number of the new MCDialog functions such as...

Page 37: ...a number of ways stop it abort it etc Sample forms demonstrate how to configure servo or stepper motor axes A number of the new MCDialog functions such as a full featured ready to run axis configurat...

Page 38: ...ex PCI 1000 Series User s Manual 35 LabVIEW Programming PMC s LabVIEW Virtual Instrument Library includes an On Line help with a Getting Started guide Artisan Technology Group Quality Instrumentation...

Page 39: ...commands are displayed in Motion Control Command Language MCCL which is the language the Motion Control API uses to communicate with PMC s Motion The MCSpy Trigger Setup dialog allows the user to term...

Page 40: ...and Delphi sample programs allow the user to Move an axis servo or stepper Monitor the actual target and optimal positions of an axis Monitor axis I O Limits Home Index an Amplifier Enable Define or c...

Page 41: ...Library reference The MCAPI Users Guide On line Help describes the basics of PMC s MCAPI This should be the first stop for any questions about the MCAPI The MCAPI On line Help provides a complete lis...

Page 42: ...ns These operations include Save and Restore axis configurations PID and Trajectory Windows Class Position and Status displays Scaling and I O configuration The Motion VI Library On line Help provides...

Page 43: ...Connect and test I O o Axis I O Home Limits Enable o General purpose Digital I O o General purpose Analog I O Execute and plot the results of single and or multi axes moves Comprehensive on line help...

Page 44: ...allow the user to verify the operation of the general purpose I O Once the systems has been tested and tuned servo s only PMC s Motor Mover allows users to move any or all motors change velocities on...

Page 45: ...ocity or acceleration deceleration step responses to determine the optimal PID filter parameters Proportional gain Derivative gain Derivative sampling period Integral gain Integration Limit With the T...

Page 46: ...to uninstall a controller It can be launched either from the Windows Start menu or by selecting the Motion Control icon from the Windows Control Panel WinControl MCCL Motion Control Command Language...

Page 47: ...to easily upgrade controller firmware via software Users can download the latest firmware revisions from the Support page of PMC s web site at www pmccorp com support support php Joystick Applet Allo...

Page 48: ...ilities MultiFlex PCI 1000 Series User s Manual 45 Status Panel Allows the user to monitor the status any or all axes servo or stepper Artisan Technology Group Quality Instrumentation Guaranteed 888 8...

Page 49: ...Software Programming and Utilities Precision MicroControl Corp 46 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 50: ...equired when using the controller to control the position or velocity of motors and associated I O events i For detailed connector and screw terminal board board signal pin outs please see the chapter...

Page 51: ...36 The typical interconnections for the 10V analog servo command are shown below 10V Analog Command Output Analog Command Return J1 J2 1 35 Servo Amplifier To Motor Ref Ref TLE2142 12V 12V ADAM 3968...

Page 52: ...53 Amp Enable 5 Enable 5V 4 7K Axis 1 Amp Enable Figure 10 Bipolar PWM command wiring example axis 1 The ST Micro L6203 is shown for example purposes only THIS INTERCONNECT DRAWING IS NOT INTENDED TO...

Page 53: ...Enable 75453 Amp Enable 5 5 PWM Sign LS541 Dig 2 Out 4 7K 5V Figure 11 Unipolar PWM command wiring example axis 1 For this example the PWM Direction output is configured to use Digital Output 2 The N...

Page 54: ...ion the Motion Control API function MCSetModuleOutputMode will allow the user to reconfigure the pulse command output signals The typical interconnections for a pulse command axis are shown below ADAM...

Page 55: ...e 5 39 Servo Amplifier To Motor Axis 1 Amp Enable Output 5 VDC J1 5 39 Motion Controller Amp Enable 75453 AE 1 Figure 13 Low Active Amplifier Enable wiring example axis 1 Note 1 Not all drivers amplif...

Page 56: ...Driver Disable Output 5 VDC 75454 WO 5 J1 1 35 ADAM 3968 wiring module 1 35 Stepper Driver To Motor Driver Disable Figure 14 Low Active Amplifier Enable wiring example axis 5 Note 1 Not all drivers am...

Page 57: ...ver Enable systems For applications that require high active Amplifier Driver Enable outputs once Windows has loaded and an application program has been launched the MCConfigureDigitalIO function can...

Page 58: ...plied to an Amplifier Driver Fault input is 25V The minimum voltage that will cause the optical isolator to conduct is 3 0V The Amplifier Driver Fault sensor must be capable of sinking sourcing at lea...

Page 59: ...detection i For additional information on incremental encoder basics please refer to page 24 ADAM 3968 wiring module 11 45 12 46 13 47 Differential Encoder Axis 1 A out A out B out B out Z out Z out 5...

Page 60: ...Axis 1 Encoder Z Axis 1 Encoder Z 5 VDC output Ground A A Error B Error Z Error B Z 5VDC 39 58 58 1 5VDC Encoder ref 10 1 5VDC Encoder ref Figure 18 Single ended encoder wiring example axis 1 i The wi...

Page 61: ...ring module 29 63 Axis 1 5 Limit J1 J2 29 Motion Controller 5 VDC Axis 1 5 Limit return supply 63 Axis 1 Limit Normall y Closed 4 7K 4 7K J3 29 63 Figure 19 Sourcing over travel limit sensor wiring ex...

Page 62: ...le 29 63 Axis 1 5 Limit J1 J2 29 Motion Controller 5 VDC Axis 1 5 Limit return supply 63 Axis 1 Limit Normall y Closed 4 7K 4 7K J3 29 63 Figure 20 Sinking over travel limit sensor wiring example i Th...

Page 63: ...is shared by axes 2 and 6 etc The maximum voltage that can be applied to an over travel limit input is 25V The minimum voltage that will cause the optical isolator to conduct is 3 0V The over travel l...

Page 64: ...provided for each channel Warning Voltage levels outside valid TTL levels applied to the TTL inputs may damage the controller ADAM 3968 wiring module 23 57 24 58 25 59 26 60 Motion Controller 5 VDC J...

Page 65: ...rent optical isolators and low current solid state switches To configure a digital output for sinking TTL low use the function MCConfigureDigitalIO Note once initialization is complete a sinking outpu...

Page 66: ...33 67 Analog input 1 J1 J2 33 Motion Controller Ground 67 TL074 AI Neg AI Pos 3 1 2 10 VDC 10 VDC Power Supply 10 VDC 10 VDC Figure 24 A D inputs wiring example Referring to the drawing above If conf...

Page 67: ...cuit be hard wired into the power distribution system The diagram below details how the watchdog relay can be used to disable amplifier power in the case of a controller watchdog failure AC Power Ampl...

Page 68: ...r encoder operation Setting the allowable following error Define trajectory parameters Tuning the servo select PID filter gain parameters Verify proper encoder operation The Motion Integrator program...

Page 69: ...r counts Systems with low resolution encoders and or high inertial loads will typically maintain a following error between 150 and 5000 encoder counts during a move The controller supports hard coded...

Page 70: ...ers Maximum Velocity Acceleration Deceleration These parameter values can be defined either by issuing function calls MCSetVelocity MCSetAcceleration MCSetDeceleration or by entering values from the S...

Page 71: ...ng error A servo motor and its load both have inertia which the servo amplifier must accelerate and decelerate while attempting to follow a change in the input from the motion controller The presence...

Page 72: ...as been tuned you should save the PID and trajectory parameters Select Save All Axis Settings from the File menu Selecting this option will load all servo settings into the mcapi ini file in the C Win...

Page 73: ...Scale of the Slide Controls At the top of each slide control is a value showing the current setting as a percentage of the current maximum setting To change the range of one or more slide controls sel...

Page 74: ...locity mode amplifier is to carefully follow the amplifier manufacturers setup instructions Since the amplifier provides the primary servo control if it is not setup correctly there is no possibility...

Page 75: ...ward 10 volts 100 000 counts per sec 0 0001 10 volts 100 000 counts per sec 1VG0 0001 set velocity gain velocity feed forward with MCCL command set velocity gain velocity feed forward using Motion Con...

Page 76: ...ntil the following error value is no longer reduced by increases in the P gain The current P gain is your baseline value Note this value in case you need get back to this step Increase the P term and...

Page 77: ...count I gain is used to reduce the static error at the end of the move Without issuing another move very slowly begin to increase the I gain setting until the axis slews to within 1 encoder count Now...

Page 78: ...or Velocity mode amplifiers it is recommended that the Integral gain option be set to Zero In this mode of operation Integral gain is only calculated after the calculated trajectory has been completed...

Page 79: ...encoder counts volt sec sec i Acceleration and deceleration feed forward values should be set prior to using the Servo Tuning Utility to set the proportional and integral gain For additional informati...

Page 80: ...e and cycle move sequences monitor position and status of the axis By selecting the Setup button the user can set velocity parameters maximum velocity acceleration and deceleration set velocity profil...

Page 81: ...lect the Velocity Profile type Define Trajectory parameters max velocity acceleration deceleration min velocity Select the Pulse Rate range Configure axis inputs over travel limits and driver fault To...

Page 82: ...observed direction of motion is not correct moving positive causes counter clockwise instead of clockwise rotation set axis scaling to 1 0 Open Loop Pulse Command Motion with Position Verification En...

Page 83: ...an open loop stepper please refer to the Stepper Basics and Moving Motors with Motor Mover sections in this chapter If the stepper motor does not operate as expected please refer the Troubleshooting c...

Page 84: ...or On buttons From a user application issue the MCEnableAxis function with state False and then state True Define the motor steps per rotation encoder counts per rotation ratio When a stepper axis is...

Page 85: ...units Tune the axis When a stepper axis is configured for closed loop operation the default proportional gain is set to 0 0001 which should be sufficient to move the axis near the specified target Fur...

Page 86: ...operation will copy all settings into the mcapi ini file so that any windows application program can load axis settings upon opening i For additional information on using the Servo Tuning program plea...

Page 87: ...uration with the File menu Save All Axis Settings option From a users application program to load the closed loop configuration call the MCDLG_RestoreAxis function from the PMC Common Motion Dialog Li...

Page 88: ...d cycle move sequences monitor position and status of the axis By selecting the Setup button the user can set velocity parameters maximum velocity acceleration and deceleration set velocity profile Tr...

Page 89: ...MODE_POSITION MCMoveRelative hCtlr 1 100000 0 The parameters defined in the program example above specify a move to position 100 000 During the move the velocity will not exceed 10 000 encoder counts...

Page 90: ...ectory Parameters are Velocity encoder counts second Acceleration encoder counts second second Deceleration encoder counts second second If user unit parameters Scale and or Rate are set to values oth...

Page 91: ...ime to target when using the same trajectory parameters Profile most likely to result jerk and or oscillation Supports on the fly target changes Parabolic Profile stepper only MCSetProfile hCtlr 1 MC_...

Page 92: ...or parabolic define maximum velocity define acceleration define deceleration execute the move MCEnableAxis hCtlr 1 TRUE MCSetOperatingMode hCtlr 1 0 MC_MODE_POSITION MCSetProfile hCtlr 1 MC_PROF_TRAPE...

Page 93: ...gital I O 2 to be true stop the motion of axis 1 MCEnableAxis hCtlr 1 TRUE MCSetOperatingMode hCtlr 1 0 MC_MODE_VELOCITY MCSetProfile hCtlr 1 MC_PROF_TRAPEZOIDAL MCSetVelocity hCtlr 1 10000 0 MCSetAcc...

Page 94: ...hCtlr 1 1 MC_MODE_CONTOUR MCSetOperatingMode hCtlr 2 1 MC_MODE_CONTOUR MCSetOperatingMode hCtlr 3 1 MC_MODE_CONTOUR Define the trajectory parameters The MCGetContourConfig MCSetContourConfig and MCCon...

Page 95: ...buffer known as the Contour Buffer to support Continuous Path Contouring When a single contour move is executed the axes will begin moving towards the targets at the user specified vector velocity and...

Page 96: ...de hCtlr 2 1 MC_MODE_CONTOUR MCSetOperatingMode hCtlr 3 1 MC_MODE_CONTOUR Motion settings GetDlgItemDouble is a helper function defined elsewhere case IDOK MCGetContourConfig hCtrlr iAxis Contour Cont...

Page 97: ...center position of the arc This command also defines which two axes will perform the arc motion The MCMoveAbsolute or MCMoveRelative commands are used to specify the end point of the arc A spiral mot...

Page 98: ...ual the controlling axis for the contour move The parameter Radius should equal the radius of the arc If the arc is greater than 180 degrees the parameter Radius must be expressed as a negative number...

Page 99: ...fy an arc the MCMoveAbsolute and MCMoveRelative functions are not used The MCArcCenter function defines the radius of the arc An example of two arc motions is shown below MCSetOperatingMode hCtlr 1 1...

Page 100: ...ion of linear moves To have the controller perform curve fitting cubic spline interpolation on a series of linear moves issue the MCEnableSynch command to the controlling axis before issuing any conto...

Page 101: ...iod of the motion When a User Defined Contour Path is selected MCBlockBegin with parameter nMode set to MC_BLOCK_CONTR_USER the MCContourDistance function is used to enter the non orthogonal contour d...

Page 102: ...al time for the contour move For moves of sufficient distance where the axis has enough time to fully accelerate this one axis will move at its preset maximum velocity All axes will move at or below t...

Page 103: ...eal value If the slave ratio is a positive value a move in the positive direction of the master will cause a move in the positive direction of the slave If the slave ratio is a negative value a move i...

Page 104: ...that positions the axes in Velocity mode Jogging without writing software One of the tools provided with the Motion Control API is the Joystick Demo This tool allows the user to configure and then jo...

Page 105: ...or the Status Panel Utility to test the limit sensors wiring and controller operation i By default all optically isolated inputs indicate that an input is on when the opto device is conducting For a...

Page 106: ...axis abruptly when the hard limit input goes active MC_LIMIT_SMOOTH Decelerate and stop the axis when the hard limit input goes active MC_LIMIT_INVERT Invert the active level of the hard limit input T...

Page 107: ...t will cause an error condition When enabled if an axis is commanded to move to a position that is outside the range of motion defined by the MCSetLimit function an error condition is indicated and th...

Page 108: ...user with two different options for homing axes 1 High level function calls using the Motion Control API Easy to program homing sequences usingMotion Control API function calls 2 MCCL homing macro s...

Page 109: ...exArm MCWaitForIndex MCIsIndexFound Aux Encoder Index Closed Loop Stepper MCFindIndex Aux Encoder Index Use only from within background task Open Loop Stepper MCEdgeArm MCWaitForEdge MCIsEdgeFound Hom...

Page 110: ...MCWaitForIndex hCtlr 1 controller processes index data MCStop hCtlr 1 stop if MCIsStopped hCtlr 1 2 0 Motor failed to stop within time limit 2 seconds error handling code goes here Sleep 100 let moto...

Page 111: ...the Coarse Home sensor and the Limit sensor Once the axis is within the Coarse Home sensor the MCIndexArm MCIsIndexFound and MCWaitForIndex functions are used to reference the reported position of the...

Page 112: ...ng routine for a servo i The following C example uses the MCIndexArm MCIsIndexFound and MCWaitForIndex functions for homing a closed loop system For complete C code homing samples that can be cut and...

Page 113: ...2 seconds error handling code goes here Sleep 100 i The following MCCL example uses the Index Arm aIAn and the Wait for Index aWI commands to home a closed loop system MCCL linear stage homing sequen...

Page 114: ...to an application program please refer to the Motion Control API on line help mcapi hlp Motion Control API homing sequence using positive limit sensor the axis must have already been moved into and tr...

Page 115: ...f the single electro mechanical home sensor To achieve the highest possible repeatability reduce the velocity of the axis and always approach the home sensor from the same direction Here is a typical...

Page 116: ...closed loop system For complete C code homing samples that can be cut and pasted into an application program please refer to the Motion Control API on line help mcapi hlp Motion Control API open loop...

Page 117: ...ystem MCCL Stepper linear stage homing sequence using Home positive limit sensors MD5 5LM2 5LN3 MJ10 enable limits call homing macro MD10 5VM 5DI0 5SV10000 5GO LU STATUS 5RL 0 IS24 MJ11 NO IS10 MJ13 N...

Page 118: ...conds error handling code goes here MCEnableAxis hCtlr 1 TRUE MCDirection hCtlr 1 MC_DIR_NEGATIVE MCSetVelocity hCtlr 1 1000 0 MCGoEx hCtlr 1 0 0 dwStatus MCGetStatus hCtlr 1 if MCDecodeStatus hCtlr d...

Page 119: ...Motion Control Precision MicroControl Corp 116 define position as 0 Move to position 100 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 120: ...encoder counts per second Time msec s 4 8 12 16 20 25000 50000 100000 75000 Optimal positions Optimal position Actual position Following error calculated trajectory complete status bit 3 set Calculate...

Page 121: ...e hCtlr 2 500 0 move 500 counts MCIsStopped hCtlr 1 2 0 if MCIsStopped hCtlr 1 2 0 Motor failed to stop within time limit 2 seconds error handling code goes here Sleep 100 Another method of indicating...

Page 122: ...ll not be implemented until the current move has been completed i If an on the fly target position change requires the axis to change direction the axis will first decelerate to a stop The axis will t...

Page 123: ...thm used by the controller to generate the servo command output is controller output Velocity encoder counts sec X Feed forward term encoder counts volt sec with a velocity of 500 000 counts per secon...

Page 124: ...deceleration gain must be used to reduce the following error at the beginning and end of a move Acceleration and deceleration feed forward values are calculated using a similar algorithm as used for...

Page 125: ...e controller type MCDLG_RestoreAxis will refuse to restore those settings You may specify the constant MC_ALL_AXES for the wAxis parameter in order to save the parameters for all axes installed on a m...

Page 126: ...stance will be added if the motor moves in a negative direction it will be subtracted When the motor finishes a move it will remain in the compensated position until the next move Prior to enabling ba...

Page 127: ...Application Solutions Precision MicroControl Corp 124 Gear backlash Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 128: ...sabled but the motion controller and the application program will have no indication that an error condition exists E stop switch connected to Amplifier Fault servo module input The Amplifier Driver F...

Page 129: ...Motion Controller AC Power In Relay NC E stop Switch 24 VDC Amplifier Power Supply 18 52 J2 17 51 18 52 Axis 3 Amplifier Fault Amp Fault supply return Axis 2 Amplifier Fault Amp Fault supply return Am...

Page 130: ...user scaling If user scaling is set to 10 000 encoder counts to one position unit the reported position will rollover at position 214 748 3647 The next positive encoder count will cause the controller...

Page 131: ...date the controller s firmware code Firmware updates for most PMC motion controllers are available for download from from the Support section of PMC s web site www pmccorp com support support php Note...

Page 132: ...m or an MCCL command text file i On power up or reset all motion controller settings revert to factory default values Therefore after power up users should always initialize all controller settings to...

Page 133: ...ows users to conveniently save all settings to C Windows mcapi ini Once the desired settings are saved users can direct other PMC application programs to load and use the saved setting by selecting Au...

Page 134: ...Program Groups i The default name for the initialization file used to save and restore controller and axis settings is mcapi ini However users can programmatically save the axis settings to any filen...

Page 135: ...ely save and restore one some or all settings individually according to their needs Users can do this either by Motion Control API function calls or by sending one or more MCCL commands to the motion...

Page 136: ...ions WORD wIndex MCEnableAxis hCtlr 1 TRUE motor on MCGoHome hCtlr 1 start from absolute zero MCWaitForStop hCtlr 1 0 100 for wIndex 0 wIndex 5 wIndex MCMoveRelative hCtlr 1 1234 0 move MCWaitForStop...

Page 137: ...gMode hCtlr 2 1 MC_MODE_CONTOUR MCSetOperatingMode hCtlr 3 1 MC_MODE_CONTOUR Linear interpolated move sequence through stored points for wIndex 1 wIndex 4 wIndex MCBlockBegin hCtlr MC_BLOCK_CONTR_LIN...

Page 138: ...uently desired motion for the system it could be defined as a macro command This is done by inserting a Macro Define MDn command as the first command in the command string For example MD3 1MR1000 WS0...

Page 139: ...he controller is reset or power to the board is turned off The Reset Macro RMn command is used to erase macros To terminate the execution of any macro that was started from WinControl press the escape...

Page 140: ...task the user should always test the macro by first executing it as a foreground task When the user is satisfied with the operation of the macro it can be run as a background task by issuing the Gener...

Page 141: ...ve to absolute position 1000 and the user issues a command at the same time to move the motor to 1000 it is unpredictable whether the motor will go to plus or minus 1000 In order to prevent conflicts...

Page 142: ...e previous example except that the task is self terminating so register 100 is not required GT0 LU STATUS 1RL 0 IC0 JR 3 NO AL1 AR200 BK loop on axis 1 status bit 0 if set set bit 1 of register 200 ta...

Page 143: ...ol API function MCEnableCapture is used to initiate position capture When this feature is enabled the current position will be recorded on the rising edge of the capture input If parameter count equal...

Page 144: ...oaded into the compare register When all position compare events have been completed the MC_STAT_BREAKPOINT flag of the axis status will be set Compare at incremental distances For compare events at f...

Page 145: ...t will be activated within 100 nano seconds of the encoder step count reaching the compare position When the compare output mode is set to Disabled the output will be at its in active level TTL low Th...

Page 146: ...f an Open Loop Pulse Command axis will be referred to as an Auxiliary Encoder The advantages of an open loop stepper with auxiliary encoder versus a closed loop axis are The pulse train of an open loo...

Page 147: ...n functions to redefine the encoder position register and the step count register of an open loop stepper with an auxiliary encoder For complete C code homing samples that can be cut and pasted into a...

Page 148: ...ease refer to PMC s Motion CD Verifying the Operation of the encoder of an open loop stepper To verify the operation of the encoder of an open loop stepper use either WinControl or Motor Mover From Wi...

Page 149: ...on of the encoder Figure 45 Rotate the motor encoder shaft back and forth Verify that the position is changing accordingly i If Motor Mover was used to verify proper auxiliary encoder operation don t...

Page 150: ...ed for Bipolar or Unipolar mode PWM frequency 19 53 KHz For applications that require a different frequency please contact the factory In Biolar mode when the motor is at its target position the PWM o...

Page 151: ...Unipolar mode or to MC_OM_BI_PWM for Bipolar mode MCSetModuleOutputMode hCtlr 1 MC_OM_UNI_PWM MCSetModuleOutputMode hCtlr 2 MC_OM_BI_PWM i For Unipolar operation you will need to configure one of the...

Page 152: ...r If the PWM input connection to the H Bridge is a TTL input you will need to add a pullup resistor to 5 volts Once the PWM Mode has been selected the servo can be tuned and exercised using any the st...

Page 153: ...s time Following error versus time DAC output versus time Analog Command axes only Auxiliary encoder position for tuning an open loop Pulse Command servo axis The time base 4 KHz 2 KHz 1 KHz for captu...

Page 154: ...ntroller from Motor Mover WinControl Servo Tuning etc will cause the controller to revert to default settings PID velocity accel decel limits etc For information restoring the user defined settings pl...

Page 155: ...exe or by downloading a text file via WinControl s file menu To begin single step execution of the above example macro enter MC10 call macro 10 then ctrl B the following will be displayed C1 MC10 1MR...

Page 156: ...on until the space bar is entered repeat one time MC10 1MR1000 1WS0 100000 1TP 1MR 1000 1WS0 100000 1TP BK wait RP1 mc10 01 997 01 0 BREAK AT COMMAND 6 MACRO 10 wait C7 M10 RP10 REPEAT space bar 01 99...

Page 157: ...ing graph depicts a simple position mode move of 1000 encoder counts with the default torque setting of 10 volts no limit Analog output Time msec s 10V 7 5V 2 5V 5 0V 25 75 125 175 200 225 50 100 150...

Page 158: ...sed loop servo control but the user can read the position of the encoder at any time MCSetOperatingMode hCtlr 1 0 MC_MODE_VELOCITY MCSetTorque hCtlr 1 2 5 axis 1 output to 2 5V MC300 MCSetTorque hCtlr...

Page 159: ...from the Support section of PMC s web site For some applications integral gain has a tendency to cause bounce or oscillation of the command signal during a move This tendency can be is especially pro...

Page 160: ...he integral term is increased the command output following error will tend to bounce MC_INT_FREEZE Freezes accumulation of integration term during movement Integration will continued once the calculat...

Page 161: ...ontrol Corp 158 selected from the Servo Setup Dialog Figure 49 Using Servo Tuning s Servo Setup Dialog to set the integral gain mode of operation Artisan Technology Group Quality Instrumentation Guara...

Page 162: ...ion provides a way of setting all scaling parameters with a single function call using an initialized MCSCALE structure To change scaling call MCGetScale update the MCSCALE structure and write the cha...

Page 163: ...ember is the number of seconds per user time unit If the velocity acceleration and deceleration are to be specified in units of inches per minute and inches per minute per minute for axis 1 then the R...

Page 164: ...Axis hCtlr 3 True Defining a Part Zero The member Zero would typically be used in conjunction with Offset to define a part zero position A PCB Printed Circuit Board pick and place operation is a good...

Page 165: ...er Zero Defining the output constant for velocity gain The member Constant allows the user to define the units to be used for setting the Velocity Gain parameters Please refer to the description of Us...

Page 166: ...ly execute firmware code for a period of 200 msec s the watchdog circuit will time out and the on board reset will be latched by the watchdog reset relay This in turn will hold the controller in a con...

Page 167: ...Application Solutions Precision MicroControl Corp 164 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 168: ...efault the optically isolated inputs and open collector outputs are associated with hard coded motion control functions Limits Homing Amp Drive fault Amp Drive Enable For maximum application flexibili...

Page 169: ...16 TTL input 16 48 TTL output 16 17 Opto isolated 3V 25V Axis 1 Coarse Home Axis 5 Home 49 Open collector 100mA Axis 1 Amp Enable 18 Opto isolated 3V 25V Axis 1 5 Limit 50 Open collector 100mA Axis 5...

Page 170: ...ator Digital I O test panel This tool can be used to configure and exercise each digital I O channel Comprehensive on line help is available from the Help menu Figure 52 Digital I O Test Panel The Dig...

Page 171: ...Ctlr WORD wChannel short int bState Delphi Function procedure MCEnableDigitalIO hCtlr HCTRLR wChannel Word bState SmallInt VB Function Sub MCEnableDigitalIO ByVal hCtrlr As Integer ByVal channel As In...

Page 172: ...hannel on C Function void MCWaitForDigitalIO HCTRLR hCtlr WORD wChannel short int bState Delphi Function procedure MCWaitForDigitalIO hCtlr HCTRLR wChannel Word bState SmallInt VB Function Sub MCWaitF...

Page 173: ...inputs are very high impedance with leakage currents less than 10 nano amps Using the A D inputs You can read the analog input values using either the Motion Control API function MCGetAnalogEx or by...

Page 174: ...ll return a value between 0 and 65532 C Function WORD MCGetAnalogEx HCTRLR hCtlr WORD wChannel Delphi Function function MCGetAnalogEx hCtlr HCTRLR wChannel Word Word VB Function Function MCGetAnalogEx...

Page 175: ...General Purpose I O Precision MicroControl Corp 172 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 176: ...ching voltage DC 110V AC 125V Status LED s Power Reset Run Standard Communication Interface 32 bit 33 MHz PCI Bus 4 KB dual ported memory in Memory Address Space Plug Play dynamic addressing Connector...

Page 177: ...Quadrature Counts sec per axis Encoder Supply Voltage 5 vdc or 12 vdc Minimum Phase differential 200mV Hardware Error Checking Yes for differential encoders Axis Inputs Optically isolated Limit Limit...

Page 178: ...er with Index Position and Velocity Resolution 32 bit Encoder Encoder and Index Inputs Differential or single ended 25 to 25 vdc max Encoder Count Rate To 20 000 000 Quadrature Counts Sec Encoder Supp...

Page 179: ...level current sink max 24 mA TTL high level curr source max 15 mA TTL high level out min voltage 2 4V TTL high level out max voltage 5 0V TTL low level output min voltage 0 0V TTL low level out max vo...

Page 180: ...dicator Lights Analog Adjustment Potentiometers Watchdog Relay Contacts Encoder Receivers with Failure Detection Circuits I O Connectors J2 J4 Digital I O Buffer Circuitry Universal 3 3 5V PCI bus Con...

Page 181: ...ollector A D inputs 5 6 option Receptacle J4 Axis 7 pulse command Axis 8 pulse command Digital Inputs 13 16 TTL Digital Inputs 25 32 Opto isolated Digital Outputs 45 48 TTL Digital Outputs 61 63 Open...

Page 182: ...voiding the warranty If any contacts are visibly out of alignment contact PMC Tech Support at support pmccorp com VHDCI SCSI mating connectors and cables J1 J4 Mating connector Cable Plug offset Amp...

Page 183: ...ins 1 and 35 Maximum adjustment range is approximately 1 0 volt POT3 Axis 3 offset adjustment potentiometer Adjust the analog command output offset of axis 3 measured between J3 pins 1 and 35 Maximum...

Page 184: ...ply return 51 J1 18 24 Input opto isolated bi directional Axis 2 Amp Fault input shared by Axis 6 Drive 18 J1 52 Axis 2 6 Amp Fault supply return 52 J1 19 33 Output TTL Digital Out 1 Axis 1 4 Compare...

Page 185: ...lt supply return 51 J2 18 32 Input opto isolated bi directional Axis 4 Amp Fault input shared by Axis 8 Drive 18 J2 52 Axis 4 8 Amp Fault supply return 52 J2 19 37 Output TTL Digital Output 5 19 J2 53...

Page 186: ...xis 1 5 Amp Fault supply return 51 J3 18 24 Input opto isolated bi directional Axis 6 Drive Fault input shared by Axis 2 Amp 18 J3 52 Axis 2 6 Amp Fault supply return 52 J3 19 41 Output TTL Digital Ou...

Page 187: ...4 51 Axis 3 7 Amp Fault supply return 51 J4 18 32 Input opto isolated bi directional Axis 8 Amp Fault input shared by Axis 8 Amp 18 J4 52 Axis 4 8 Amp Fault supply return 52 J4 19 45 Output TTL Digita...

Page 188: ...46 46 J1 13 13 J1 47 47 J1 14 14 J1 48 48 J1 15 15 J1 49 49 J1 16 16 J1 50 50 J1 17 17 J1 51 51 J1 18 18 J1 52 52 J1 19 33 Output TTL Digital Out 1 19 J1 53 5 VDC 53 J1 20 34 Output TTL Digital Output...

Page 189: ...46 J2 13 13 J2 47 47 J2 14 14 J2 48 48 J2 15 15 J2 49 49 J2 16 16 J2 50 50 J2 17 17 J2 51 51 J2 18 18 J2 52 52 J2 19 37 Output TTL Digital Output 5 19 J2 53 5 VDC 53 J2 20 38 Output TTL Digital Output...

Page 190: ...directional Axis 1 Drive Fault input 17 J3 51 Axis 1 Drive Fault supply return 51 J3 18 24 Input opto isolated bi directional Axis 2 Drive Fault input 18 J3 52 Axis 2 Drive Fault supply return 52 J3...

Page 191: ...d bi directional Axis 3 Drive Fault input 17 J4 51 Axis 3 Drive Fault supply return 51 J4 18 32 Input opto isolated bi directional Axis 4 Drive Fault input 18 J4 52 Axis 4 Drive Fault supply return 52...

Page 192: ...me the Run LED D3 is on When the relay is energized the normally open contact J8 pin 1 will be connected to the relay common J8 pin 2 These signals can be brought out to the outside world allowing ext...

Page 193: ...Pulse These signals are connected to the external driver that supplies current to the motor windings Both of these signals are driven by high current open collector drivers and are suitable for direc...

Page 194: ...s Inputs i The default configuration for the controller is for an Analog Command axis and a Pulse Command axis to share opto isolated inputs and open collector drivers The user can change any of the d...

Page 195: ...a fixed position in the motor s range of motion The input device is a bi directional optical isolator The allowable voltage range for this signal is 3 0 VDC to 25 0 VDC The allowable voltage range fo...

Page 196: ...ng decelerate to a stop stop immediately turn off the axis that can be configured by the function MCSetLimits The limit switch inputs can be enabled and disabled by MCSetLimits See the description of...

Page 197: ...s enabled the open collector driver will be turned on sinking current through the interface device of the servo amplifier stepper driver When the axis is turned off or the controller is reset this sig...

Page 198: ...ts of a magnitude signal and a separate direction signal The magnitude signal is provided by the modules Analog Command Signal while this signal provides a digital direction command Default Configurat...

Page 199: ...1 octal buffers are used to provide 16 TTL level digital outputs that allow the user to control external devices For additional information please refer to the General Purpose I O chapter Analog Input...

Page 200: ...12V 12V Axis 2 10V output J1 2 VREF POT2 _ J1 36 _ 12V 12V Axis 3 10V output J2 1 VREF POT3 _ J2 35 _ 12V 12V Axis 1 10V output J1 1 VREF POT1 _ J1 35 _ 12V 12V Axis 4 10V output J2 2 VREF POT4 _ J2 3...

Page 201: ...1 4 7K 5VDC SN75453B Axis 2 Direction CW J3 42 J3 8 J4 2 4 7K 5VDC SN75453B Axis 3 Step CCW J4 36 4 7K 5VDC SN75453B Axis 3 Direction CW J4 37 J4 3 J4 7 4 7K 5VDC SN75453B Axis 4 Step CCW J4 41 4 7K 5...

Page 202: ...5VDC Axis 1 Amp Enable 5VDC SN75453B J3 1 Axis 5 All Windings off J3 35 4 7K 5VDC Axis 5 All Windings Off 5VDC SN75453B Axis 1 Phase A Axis 1 Phase A Axis 1 Phase B Axis 1 Phase B Axis 1 Phase Z Axis...

Page 203: ...7 Dig In 1 Ax 1 2 Pos Capture J1 24 J1 58 Dig In 2 J1 25 J1 59 Dig In 3 J1 26 J1 60 Dig In 4 74LS541 6 7 8 9 2 3 4 5 5 VDC 10K 5 VDC 10K 5 VDC 10K 5 VDC 10K 5 VDC 10K 5 VDC 10K 5 VDC 10K 5 VDC 10K 5 V...

Page 204: ...rol system failures The steps described in these flow charts will direct you to programs installed with PMC s Motion Control API Motion Integrator Motor Mover CWDemo Servo Tuning WinControl etc These...

Page 205: ...d or analog I O working as expected No Go to the General Purpose I O Troubleshooting flow charts Is the controller operating as expected Yes No Go to the Miscellaneous operation Troubleshooting flow c...

Page 206: ...s displayed No Verify the Driver version Open MCAPI Readme txt Program FIles Motion Control Motion Control API Readme txt Version 4 1 Update the drivers MCAPI Uninstall the old MCAPI then install the...

Page 207: ...urned on Yes The controller has failed to load and or launch its motion control code No For additional information contact PMC technical support The controller requires 5 12 VDC power Check your power...

Page 208: ...ain 3 Decrease Integral gain Does the axis oscillate No Derivative gain may be gain too high Either 1 Decrease derivative gain 2 Increase the derivative sampling period If the problem persists contact...

Page 209: ...ervo motor does not move when commanded No Turn the motor on MCEnable Axis No The encoder may have failed refer to Motion Integrator encoder checkout Does the motor resist rotation Yes No Yes Did the...

Page 210: ...hased Yes No A servo motor takes off at full velocity when turned on aMN No The controller is decoding noise as valid encoder counts Checkout wiring A differential encoder may be required If problem p...

Page 211: ...to over come system friction Increase Integral gain by 2 each move until the axis reaches the target If axis oscillates at the end of the move reduce the Proportional gain The commanded maximum veloc...

Page 212: ...eration Referring to chpater 5 connect a voltmeter and verify the operation of the Drive Enable Disable Yes From CWDemo zero position move relative 50 steps Did the motor move Do the Actual Optimal an...

Page 213: ...s Manual for wiring examples No With sensor active does the Motion Integrator Test Panel indicate that the Home sensor is active Yes The controller is recognizing the Home and or Index sensor Contact...

Page 214: ...or Codes Both the Motion Control API functions and the Motion Control Command Language MCCL provide error code and interface status information to the user Chapter 11 Artisan Technology Group Quality...

Page 215: ...ation error This is an internal memory allocation problem with the DLL contact Technical Support for assistance 9 MCERR_WINDOWSERROR A windows function returned an error use GetLastError under WIN32 f...

Page 216: ...ur Path Command Parameter Invalid 9 Contour Path Command Doesn t Specify an AXIS 10 Axis error over travel error max following error exceeded 13 No axis specified 14 Axis not assigned 15 Axis already...

Page 217: ...Controller Error Codes Precision MicroControl Corp 214 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 218: ...s Command Set Defines the operations that can be executed by the motion controller Commutation The action of applying currents or voltages to the proper motor phases in order to produce optimum motor...

Page 219: ...g speed Coulomb friction or proportional to speed viscous friction Holding Torque Sometimes called static torque holding torque specifies the maximum external torque that can be applied to a stopped e...

Page 220: ...hat converts mechanical position into an electrical signal A resolver is a variable transformer that divides the impressed AC signal into sine and cosine output signals The amplitude of these signals...

Page 221: ...Precision MicroControl Corp 218 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 222: ...celeration Gain 0 Velocity Override 1 Torque Limit 10 Proportional Gain 2 Derivative Gain 1 Integral Gain 01 Integration Limit 50 Maximum Following Error 1024 Motion Limits disabled Low Limit of Movem...

Page 223: ...rol Corp 220 User Scale 1 User Zero 0 User Offset 0 User Rate Conversion 1 User Output Constant 1 Sampling Frequency 4 KHz Slave Ratio 1 Artisan Technology Group Quality Instrumentation Guaranteed 888...

Page 224: ...Application programming C 32 Delphi 34 LabVIEW 35 Visual Basic 33 Arc motion 91 Contour buffer 92 enable 94 on the fly changes 97 Vector acceleration 91 Vector deceleration 91 Vector velocity 91 At ta...

Page 225: ...al inputs signal description 195 wiring 61 Digital outputs signal description 196 wiring 62 Direction configure for Unipolar PWM 148 setting 90 Documentation MultiFlex PCI 1000 Series controllers 3 Dr...

Page 226: ...102 103 programmable 102 TTL vs opto isolated 14 wiring 58 59 102 Linear interpolation 91 Contour buffer 92 enable 93 133 on the fly changes 97 specifying 91 Vector acceleration 91 Vector deceleration...

Page 227: ...ar motion 97 Constant velocity motion 119 Point to point 119 Trapezoidal velocity profile 119 Open loop mode described 20 Operating systems 6 Opto isolated inputs wiring 58 59 60 P Parabolic velocity...

Page 228: ...117 WinControl 43 152 213 Specifications analog command axis 174 analog inputs 176 digital I O 176 pulse command axis 175 stepper control 175 Status LED s 179 Status Panel utility 67 103 117 Stepper m...

Page 229: ...asic programming 33 W Wait for at target 118 for trajectory complete 117 Watchdog circuit description 163 Watchdog relay contacts pin out 189 wiring 64 Windows registry updating I O configuring 167 Wi...

Page 230: ...MultiFlex PCI 1000 Series User s Manual 227 Artisan Technology Group Quality Instrumentation Guaranteed 888 88 SOURCE www artisantg com...

Page 231: ...del Nogal Carlsbad CA 92009 1415 USA Tel 760 930 0101 Fax 760 930 0222 www pmccorp com Information info pmccorp com Technical Support support pmccorp com Artisan Technology Group Quality Instrumentat...

Page 232: ...service in house repair center WE BUY USED EQUIPMENT Sell your excess underutilized and idle used equipment We also offer credit for buy backs and trade ins www artisantg com WeBuyEquipment REMOTE IN...

Reviews: