background image

Advance Technologies; Automate the World.

Manual Rev. 

2.00

Revision Date: 

December 15, 2007

Part No: 

50-15061-1000

cPCI-8168

6U Compact PCI 8-Axis Servo / Stepper

Motion Control Card

User’s Manual

Summary of Contents for cPCI-8168

Page 1: ...Advance Technologies Automate the World Manual Rev 2 00 Revision Date December 15 2007 Part No 50 15061 1000 cPCI 8168 6U Compact PCI 8 Axis Servo Stepper Motion Control Card User s Manual...

Page 2: ...or inability to use the product or documentation even if advised of the possibility of such damages This document contains proprietary information protected by copy right All rights are reserved No pa...

Page 3: ...ice adlinktech com TEL 886 2 82265877 FAX 886 2 82265717 Address 9F No 166 Jian Yi Road Chungho City Taipei 235 Taiwan Please email or FAX this completed service form for prompt and satisfactory servi...

Page 4: ......

Page 5: ...ftware Driver Installation 13 2 5 CN2 Pin Assignments External Power Input 14 2 6 CN3 Pin Assignments SCSI 68 Pins Connector 15 2 7 CN4 Pin Assignments SCSI 68 Pins Connector 16 CN5 Pin Assignments SC...

Page 6: ...tion control kernel 41 DSP based motion control kernel 41 ASIC based motion control kernel 41 Compare Table of all motion control types 42 cPCI 8168 s motion controller type 42 4 2 Motion Control Mode...

Page 7: ...General purpose counter 74 Target position recorder 74 4 6 The Comparaters 75 Soft end limit comparators 75 Command and feedback error counter comparators 75 General comparator 75 Trigger comparator 7...

Page 8: ...tion Status 144 6 12 Motion Interface I O 146 6 13 Motion I O Monitoring 150 6 14 Interrupt Control 152 6 15 Position Control and Counters 160 6 16 Position Compare and Latch 165 6 17 Continuous motio...

Page 9: ...List of Figures v List of Figures Figure 1 1 Block Diagram of the cPCI 8168 2 Figure 1 2 Flow chart for building an application 3 Figure 2 1 PCB Layout of the CPCI 8168 10...

Page 10: ...vi List of Figures...

Page 11: ...e ability to correct positioning errors generated by inaccurate mechanical transmis sions cPCI 8168 features the postion compare and trigger output function which allows users to coordinate the compar...

Page 12: ...re package included with the cPCI 8168 MotionCreator is use ful for debugging a motion control system during the design phase of a project An on screen display lists all installed axes informa tion an...

Page 13: ...igure 1 2 illustrates a flow chart of the recommended process in using this manual in developing an application Refer to the related chapters for details of each step Figure 1 2 Flow chart for buildin...

Page 14: ...on X Change position and speed on the Fly Position speed override X 2 axes position compare trigger output with 4K FIFO auto loading X 13 home return modes X Software limit function X Home switch inde...

Page 15: ...rive X Internal reference clock 19 66 MHz X Position pulse setting range 134 217 728 134 217 728 pulses 28 bit X Up down counter counting range 0 268 435 455 28 bit or 134 217 728 to 134 217 727 I O S...

Page 16: ...Z Input voltage range 0 5V Z Change of State detection Z Isolation optocoupler HP0631 X 4 channels high speed digital output with high current output ability HSOUT Z Output voltage range 5V 30V Z Out...

Page 17: ...a rate 6Mpps X 2 master controller on RJ45 X Each master controller controls 63 slave modules at most X I O refreshing rate 30 1 usec per slave module X Full Half Duplex mode selectable on each master...

Page 18: ...rs to be loaded in their own program This product is also bundled with the card Refer to Chapter 5 for more details 1 4 Available Terminal Board DIN 68S 2 DIN 68Y SGII DIN 68P A4 and DIN 68M J3A are a...

Page 19: ...g the connector pin assignments the remaining sections and wiring the connections 2 1 Package Contents In addition to this User s Guide the package also includes the fol lowing items X cPCI 8168 advan...

Page 20: ...ut Connector 24V X CN3 SCSI 68Pin Connector for Axis0 1 X CN4 SCSI 68Pin Connector for Axis2 3 X CN5 SCSI 68Pin Connector for Axis4 5 X CN6 SCSI 68Pin Connector for Axis6 7 X S1 S2 Axis0 7 end limit l...

Page 21: ...modem monitor etc connected to computer Remove the cover from your computer 3 Select a 32 bit PCI expansion slot PCI slots are shorter than ISA or EISA slots and are usually white or ivory 4 Before h...

Page 22: ...12 Installation Check the control panel of the Windows system if the card is listed by the system If not check the PCI settings in the BIOS or use another PCI slot...

Page 23: ...Autorun the ADLINK All In One CD Choose Driver Installation Motion Control cPCI 8168 2 Follow the procedures of the installer 3 After setup installation is completed restart windows Suggestion Please...

Page 24: ...3 Wires for connection to CN2 Z Solid wire 0 32 mm to 0 65 mm AWG28 to AWG22 Z Twisted wire 0 08 mm2 to 0 32 mm2 AWG28 to AWG22 Z Naked wire length 10 mm standard The following diagram shows the exte...

Page 25: ...phase 1 49 EB2 I Encoder B phase 2 16 EZ1 I Encoder Z phase 1 50 EZ2 I Encoder Z phase 2 17 EZ1 I Encoder Z phase 1 51 EZ2 I Encoder Z phase 2 18 EX 5V O 5V power supply output 52 EX 5V O 5V power sup...

Page 26: ...49 EB4 I Encoder B phase 4 16 EZ3 I Encoder Z phase 3 50 EZ4 I Encoder Z phase 4 17 EZ3 I Encoder Z phase 3 51 EZ4 I Encoder Z phase 4 18 EX 5V O 5V power supply output 52 EX 5V O 5V power supply out...

Page 27: ...ncoder B phase 5 49 EB6 I Encoder B phase 6 16 EZ5 I Encoder Z phase 5 50 EZ6 I Encoder Z phase 6 17 EZ5 I Encoder Z phase 5 51 EZ6 I Encoder Z phase 6 18 EX 5V O 5V power supply output 52 EX 5V O 5V...

Page 28: ...B7 I Encoder B phase 7 49 EB8 I Encoder B phase 8 16 EZ7 I Encoder Z phase 7 50 EZ8 I Encoder Z phase 8 17 EZ7 I Encoder Z phase 7 51 EZ8 I Encoder Z phase 8 18 EX 5V O 5V power supply output 52 EX 5V...

Page 29: ...Installation 19 2 9 Overview of CN3 CN6...

Page 30: ...l Function 1 HSL2_R 2nd master receive data 2 HSL2_T 2nd master transmit data 3 HSL1_R 1st master receive data 4 HSL1_T 1st master transmit data 5 HSL1_T 1st master transmit data 6 HSL1_R 1st master r...

Page 31: ...Installation 21 2 11 Switch Setting...

Page 32: ...s normal open type limit switch or A contact type The switch on is to use the nor mal closed type limit switch or B contact type The default set ting is set as normal open type O N OFF S 1 O N O FF S...

Page 33: ...eedback Signals EA EB and EZ Section 3 3 Origin Signal ORG Section 3 4 End Limit Signals PEL and MEL Section 3 5 In position signals INP Section 3 6 Alarm signal ALM Section 3 7 Deviation counter clea...

Page 34: ...train and to indicate the direction The OUT and DIR signals can also be programmed as CW and CCW signals pair In this section the electronic characteristics of the OUT and DIR signals are shown Each...

Page 35: ...er Therefore you have to take care of the driving capability when connecting with the encoder feedback or motor driver feedback The differential signal pairs will be converted to digital signal EA EB...

Page 36: ...source The connection between cPCI 8168 encoder and the power sup ply is shown in the following diagram Please note that the exter nal current limit resistor R is necessary to protect the cPCI 8168 in...

Page 37: ...ally a limit switch is used to indicate the origin of one axis The specifications of the limit switches should with contact capacity of 24V 6mA minimum An internal filter circuit is used to filter ou...

Page 38: ...signals in the minus direction The signals connection and relative circuit diagram is shown in the following diagram The external limit switches featuring a contact capacity of 24V 6mA minimum You ca...

Page 39: ...zero The relative signal name pin number and axis number are shown in the following table The input circuit of the INP signals are shown in the following dia gram The in position signals are usually...

Page 40: ...name pin number and axis num ber are shown in the following table The input circuit of alarm circuit is shown in the following diagram The ALM signals are usually from servomotor drivers which usu all...

Page 41: ...ch is active 3 an alarm signal stops OUT and DIR signals 4 an emergency stop command is issued by software operator The relative signal name pin number and axis number are shown in the following table...

Page 42: ...gnal Connections 3 8 General purpose Signal SVON The SVON signals can be used as servomotor on control or gen eral purpose output signals The output circuit of SVON signal is shown in the following di...

Page 43: ...al Connections 33 3 9 General purpose Signal RDY The RDY signals can be used as motor driver ready input or gen eral purpose input signals The input circuit of RDY signal is shown in the following dia...

Page 44: ...olated digital output goes to high the sink current will be from external DOUT supplied voltage Each transis tor on TD62083 is OFF when reset Spec of TD62083 X Output sustaning voltage 50V X Output Cu...

Page 45: ...or transistor structure The Input voltage range from 5V to 24V and input resister is 4 7K 1 2W The connection between outside signal is shown below Maximum forward current through the diode of photoco...

Page 46: ...e sink current will come from the external HSOUT supplied voltage The time delay from HSDOx to HSOUT is within 15ns Maximum current output ability is limited by the wire of cPCI 8168 to be 1 ampere Ea...

Page 47: ...ctions of these inputs are shown in the following diagram The isolated digital input is open collector transistor structure The Input voltage is 5V The connection between outside signal is shown bello...

Page 48: ...nd CMP2 The cPCI 8168 provides two pins for position compare trigger out put The pulse width of this trigger is 100 micro seconds for most industrial CCD camera The pin assignment and wiring are as fo...

Page 49: ...hall sensors vector space and so on Motion control refers to the speed profile generating trajectory following multi axes synchro nization and coordinating 4 1 1 Voltage type motion control Interface...

Page 50: ...operation motion control seems more important than motor control In industial applications reliability is a very important factor Motor driver vendors make good perfor mance products and motion contr...

Page 51: ...be used for all motion control calculations DSP does not have the problems real time software does since DSP has its own OS to arrange all procedures and there aren t any interruptions from other inp...

Page 52: ...lling motors All the speed parameters calculations are done via our library For example if users want to perform an one axis point to point moition with a trapezoidal speed profile they need only fill...

Page 53: ...of motor are 10 000 pulses We can say that one pulse s physical unit is equal to 10mm 10 000p 1 micro meter Just set a command with 15 000 pulses for motion control if we want to move 15mm How about i...

Page 54: ...3500 10 000 1 000 650 pulses The motion con troller will calculate this automatically when move ratio is set The move ratio means the feedback resolution command reso lution 4 2 2 Absolute and relativ...

Page 55: ...ion happens the motion controller will lower the maximum velocity but keep the acceleration rate to meet user s distane requirement The chart of this situation is shown as below This kind of speed pro...

Page 56: ...d a Bell curve This speed profile improves the speed of acceleration and also reduces the vibration of acceleration For a bell curve we define its shape s parameter as below Tacc Acceleration time in...

Page 57: ...apezoidal profile motion This kind of speed profile could be applied on velocity mode posi tion mode in one axis or multi axes linear interpolation and two axes circular interpolation modes 4 2 5 Velo...

Page 58: ...a physical length to pulses Inside our software library we will keep the distance less than one pulse in register and apply it to the next motion function Besides positioning via pulse counts our moti...

Page 59: ...0 0 to 10 4 The linear inter polation results are shown below The pulse output from X or Y axis remains 1 2 pulse difference according to a perfect linear line The precision of linear interpo laition...

Page 60: ...lation means XY axes simultaneously start from an initial point 0 0 and stop at an end point 1800 600 The path between them is an arc and the MaxVel is the tangential speed Notice that if the end poin...

Page 61: ...interrupting it The motion controller can make it possible because there are three command buffers pre registers inside While the first command is still executing users are able to set a second comma...

Page 62: ...ws this architechture of continu ous motion In addition to the position command the speed command should be set correctly to perform a continuous speed profile In the fol lowing diagram the continuous...

Page 63: ...c interpola tion User are able to set the speed matched between two com mand s speed setting If the INP checking is enabled there will be a delay in the motion in between each command in the buffers H...

Page 64: ...IC requiring no software efforts or CPU loading After home return is complete the target counter will be reset to zero as the desired position of home mode Consider a raising edge when in ORG input So...

Page 65: ...Operation Theory 55 Home mode 0 Turn ON ORG then reset counter When SD is not installed When SD is installed and SD is not latched...

Page 66: ...56 Operation Theory Home mode 1 Turn ON ORG twice then reset counter Home mode 2 Turn ORG ON then Slow down to count EZ numbers and reset counter...

Page 67: ...Operation Theory 57 Home mode 3 Turn ORG ON then count EZ numbers and reset counter Home mode 4 Turn ORG On then reverse to count EZ num ber and reset counter...

Page 68: ...ode 5 Turn ORG On then reverse to count EZ num ber and reset counter not using FA Speed Home mode 6 Turn EL On then reverse to leave EL and reset counter Home mode 7 Turn EL On then reverse to count E...

Page 69: ...Operation Theory 59 Home mode 8 Turn EL On then reverse to count EZ number and reset counter not using FA Speed Home mode 9 Turn ORG On then reverse to zero position an extension from mode 0...

Page 70: ...on Theory Home mode 10 Turn ORG On then counter EZ and reverse to zero position an extension from mode 3 Home mode 11 Turn ORG On then reverse to counter EZ and reverse to zero position an extension f...

Page 71: ...11 Home Search Function This mode is used to add auto searching function on normal home return mode described in the previous section no matter which position the axis is The following diagram shows...

Page 72: ...nd the multiplier has the additional selec tions of 1 2 or 4 The following figure shows a pulser ratio block diagram 4 2 13 Simultaneous Start Function Simultaneous motion means more than one axis can...

Page 73: ...ng motion is a t curve the speed override will be a t curve 4 2 15 Position Override Function Position override is when users want to change the target position of the original positioning command dur...

Page 74: ...is digi tal I O signals including servo ON alarm INP servo ready alarm reset and emergency stop inputs The following sections will describe the functions of these I O pins 4 3 1 Pulse Command Output...

Page 75: ...e per second The DIR signal represents command direction of posi tive or negative The diagrams below show the output waveform It is possible to set the polarity of the pulse chain Pulse mode 0 OUT pin...

Page 76: ...Pulse is normally high Pulse outmode 5 Pulse is normally low The command pulses are counted by a 28 bit command counter The command counter can store a value of total pulses put out from the controll...

Page 77: ...om command output pulses The following diagrams show these two types of pulse feedback signals Plus and Minus Pulses Input Mode CW CCW Mode The pattern of pulses in this mode is the same as the Dual P...

Page 78: ...ion signal The in position signal is an output signal from the motor driver It tells the motion controller a motor has reached a position within a predefined error The predefined error value is an in...

Page 79: ...on will always have a delay from the command position The error counter counts and displays the difference between command pulses and feedback pulses Motor driver use the error counter as a basic cont...

Page 80: ...n alarm signal if there is something wrong inside the servo driver Some alarm situations are the servo motor is over current over speed over loading and so on Power reset can clear the alarm status bu...

Page 81: ...e of the end limit switch signals the motion controller will stop sending pulses and will output an ERC signal The purpose of these two switch signals is to prevent the machine from crashing during mi...

Page 82: ...hine damage in emergeny situations Users can connect an emergency stop button to this input on their machine although it is suggested that this input is kept as a nor mal closed type for safety 4 5 Th...

Page 83: ...clear signal or home function completion Users can also use a software command counter setting function to reset it 4 5 2 Feedback position counter The feedback position counter is a 28 bit binary up...

Page 84: ...low ing 1 Command position output the same as a command position counter 2 Feedback position input the same as a feedback posi tion counter 3 Manual Pulser input Default setting 4 Clock Ticks Counter...

Page 85: ...that these two com parators only compare the command position counter Once the command position is over the limited set inside the positive or neg ative comparators it will stop moving as it touches t...

Page 86: ...axes have this function only those with a CMP pin The following diagram shows the application of trigger ing In this application the table is controlled by the motion command and the CCD Camera is con...

Page 87: ...backlash compensation is performed each time when the direction changes on operation The slip correction function is performed before a motion command regardless of the direction The correction amoun...

Page 88: ...inputed there is no profile for these parameters In this situation the motion library will main tain the acceleration and deceleration rate attempting to automati cally lower the high speed originally...

Page 89: ...divided into two groups One is for event interrupt which is maskable by _8168_int_control and the other is for error interrupt which isn t maskable and it only can be turned off by _8168_int_control T...

Page 90: ...en multiple cards are applied to a system the number of cards must be noted The card number depends on the card ID switch setting on the board The axis number is dependant on the card ID For example i...

Page 91: ...ovides a simple yet powerful means to setup configure test and debug motion control systems useing cPCI 8168 cards Note that Motion Creator is available only for Windows 95 98 or Windows NT with the s...

Page 92: ...cards and those saved configura tions will be loaded automatically when motion creator is executed later again The two files 8168 ini and 8168MC ini in windows root directory are used to save all set...

Page 93: ...Motion Creator 83 5 3 Motion Creator Form Introducing 5 3 1Initial forms The following Figure shows the initial view after running Motion Creator...

Page 94: ...The status of motion I O Light On means Active while Light Off indicates inactive The related function is _8168_get_io_status B Position X Command display value of command counter The related functio...

Page 95: ...atus X Count total count of interrupt X INT Reset Button this button clears all INT status and INT counter to 0 F Velocity The absolute value of velocity in unit of PPS The related function is _8168_g...

Page 96: ...t the absolute position for Absolute Mode It is only effective when Absolute Mode is selected I Distance Set the relative distance for Relative Mode It is only effective when Relative Mode is selected...

Page 97: ...bsolute Mode or Relative Mode only the value is effective ie 5000 0 is the same as 5000 0 In Cont Move both the value and sign are effective 5000 0 means 5000 0 in the negative direction X Accel Time...

Page 98: ...es backward X In Cont Move the axis moves in the opposite direction according to the velocity setting X In Manual Pulser Move the axis goes into pulser move The speed limit is the value set by Maximum...

Page 99: ...n To close it click this button again To clear data click on the curve T Next Axis Click this button to change operating axis U Save Config Click this button to save current configuration to 8168 ini...

Page 100: ...Select the Logic and Active tim ing of ERC signal The related function call is _8168_set_erc D EL Response mode Select the response mode of EL signal The related function call is _8168_set_el E ORG L...

Page 101: ...J Save Config Click this button to save current configuration to 8168 ini K Switch Operate form 5 3 2 L Switch to Pulse I O and INT factor configuration form 5 3 4 M Back Click this button to go back...

Page 102: ...all is _8168_set_pls_iptmode _8168_set_feedback_src C Move Ratio Set the move ratio feedback pulse command for current target axis The value should not be 0 The related func tion call is _8168_set_mov...

Page 103: ...wants to operate X Current Select Set ID 0 for the first HSLink set 1 for the second X Connect Auto Scan Connects the master card and slave I O modules then scans all the slave I O modules in the Cur...

Page 104: ...rent Select Card ID will be displayed on the screen Now user can press the Monitor button to enter the HSL System Monitor window Z Page Up Displays previous 9 slave I O modules Z Page Down Displays th...

Page 105: ...ve I O modules in the Current Select Set ID of the Current Select Card ID will display in the screen Now user can select a slave I O module in the screen then press the Test Slave button to enter the...

Page 106: ...in cPCI 8168 A Digital output B Digital input C High speed digital output D High speed digital input E Analog output range from 10 to 10 V F Analog input range from 10 to 10 V G Next Card Click this...

Page 107: ...ribes the supporting software for cPCI 8168 cards These functions can be used to develop application pro gram in C or Visual Basic or C language If Delphi is used the programming environment it is nec...

Page 108: ...Creator _8168_get_fpga_version Get the FPGA firmware version Function Name Description _8168_set_pls_outmode Set pulse command output mode _8168_set_pls_iptmode Set encoder input mode _8168_set_feedb...

Page 109: ...S pin _8168_backlash_comp Set backlash corrective pulse for compensation _8168_suppress_vibration Set vibration suppressing timing Function Name Description _8168_start_tr_move_xy _8168_start_tr_move_...

Page 110: ...2 axis linear interpolation for any 2 axes among axis 0 to 3 s for axis 4 to 7 with S curve profile _8168_start_tr_line3 _8168_start_tr_line3s Begin a relative 3 axis among axis 0 to 3 s for axis 4 to...

Page 111: ...iption _8168_start_a_arc_xy Begin a absolute circular interpolation for X Y Z U A B C D _8168_start_a_arc_zu _8168_start_a_arc_ab _8168_start_a_arc_ad _8168_start_r_arc_xy Begin a relative circular in...

Page 112: ...rt pulser line move _8168_pulser_r_arc2 Start pulser arc move _8168_set_pulser_ratio Set pulser input ratio Function Name Description _8168_motion_done Return the motion status Function Name Descripti...

Page 113: ...apped interrupt event Windows only _8168_get_int_status Get INT Status Windows only _8168_link_interrupt Set link to interrupt call back function Windows only _8168_set_int_factor Set INT factor _8168...

Page 114: ...the command position counter _8168_get_error_counter Get the value of position error counter _8168_reset_error_counter Reset the position error counter _8168_get_general_counter Get the value of gener...

Page 115: ...mpar ator Set general purposed comparator _8168_set_trigger_compara tor Set Trigger comparator _8168_check_compare_dat a Check current comparator data _8168_check_compare_stat us Check current compara...

Page 116: ...ll configured axis Function Name Description W_HSL_Start Start HSLink communication W_HSL_Auto_Start Auto start HSLink communication W_HSL_Stop Stop HSLink communication Function Name Description W_HS...

Page 117: ...ction Name Description _8168_set_h_timer Set high resolution timer _8168_h_timer Get high resolution timer counter _8168_ssleep Pause for a specific time in program by timer _8168_delay_time_mt Pause...

Page 118: ...rogramming Environment _ hardware_model _ action_name e g _8168_Initial In order to recognize the difference between C library and VB library a capital B is put on the head of each function name e g B...

Page 119: ...tion once before using other functions _8168_close This function is used to close cPCI 8168 cards and release the cPCI 8168 related resources which should be called at the end of an application _8168_...

Page 120: ...X _8168_set_sd X _8168_set_alm X _8168_set_inp X _8168_set_move_ratio _8168_get_fpga_version This function is for getting the FPGA firmware version number The version history is Syntax C C DOS Windows...

Page 121: ...r B_8168_config_from_file ByVal filename As string as integer Argument existCards numbers of existing cPCI 8168 cards cardNo The cPCI 8168 card index number irq_no Irq number of specified cPCI 8168 ca...

Page 122: ...k pulse There are four types for feedback pulse input Note that this function makes sense only when src parameter in _8168_set_feedback_src function is set to 0 as external source _8168_set_feedback_s...

Page 123: ...Output pls_outmode setting of command pulse output mode pls_iptmode setting of encoder feedback pulse input mode pls_logic Logic of encoder feedback pulse pls_logic 0 Non inverse direction pls_logic...

Page 124: ...114 Function Library Src Counter source Return Code ERR_NoError Value Meaning 0 External Feedback 1 Command pulse...

Page 125: ...with trapezoidal profile The axis will continue to travel at a constant velocity until the velocity is changed or the axis is com manded to stop The direction is determined by the sign of velocity par...

Page 126: ...y profile is decided by original motion profile _8168_emg_stop This function is used to immediately stop an axis for all motion moves _8168_fix_speed_range This function is used to define the speed ra...

Page 127: ...TimeSecond As Double As Integer B_8168_sd_stop ByVal AxisNo As Integer ByVal Tdec As Double As Integer B_8168_emg_stop ByVal AxisNo As Integer As Integer B_8168_fix_speed_range ByVal AxisNo As Intege...

Page 128: ...ary Tdec specified deceleration time in unit of second Speed Variable to save current speed speed range 0 6553500 Return Code ERR_NoError ERR_SpeedError ERR_SpeedChangeError ERR_SlowDownPointError ERR...

Page 129: ..._backlash_comp Set backlash compensating pulse for compensation _8168_suppress_vibration Set vibration suppressing tim ing The moving direction is determined by the sign of Pos or Dist parameter If th...

Page 130: ...turn control to the program _8168_start_sa_move This function causes the axis to accelerate from a starting velocity slow at a constant velocity and decelerate to a stop at the speci fied absolute pos...

Page 131: ...outputs backlash corrective pulses before sending commands This func tion is used to set the compensation pulse numbers _8168_suppress_vibration This function is used to suppress the vibration of the...

Page 132: ...Pos As Double ByVal StrVel As Double ByVal MaxVel As Double ByVal Tacc As Double ByVal Tdec As Double As Integer B_8168_start_sr_move ByVal AxisNo As Integer ByVal Dist As Double ByVal StrVel As Doub...

Page 133: ...xVel starting velocity of a velocity profile in unit of pulse per second Tacc specified acceleration time in unit of second Tdec specified deceleration time in unit of second SVacc specified velocity...

Page 134: ...124 Function Library Return Code ERR_NoError ERR_SpeedError ERR_PChangeSlowDownPointError ERR_MoveRatioError...

Page 135: ...The s means secondary motion chip in one cPCI 8168 _8168_start_sr_line2 s Begin a relative 2 axis linear interpolation for any 2 axes from one motion chip with S curve pro file The s means secondary m...

Page 136: ...on chip in one cPCI 8168 _8168_start_ta_line4 s Begin an absolute 4 axis linear interpolation for all 4 axes from one motion chip with trapezoidal profile The s means secondary motion chip in one cPCI...

Page 137: ...16 CardNo I16 AxisArray F64 DistX F64 DistY F64 DistZ F64 StrVel F64 MaxVel F64 Tacc F64 Tdec F64 SVacc F64 SVdec I16 _8168_start_sa_line3 s I16 CardNo I16 AxisArray F64 PosX F64 PosY F64 PosZ F64 Str...

Page 138: ...Tdec As Double ByVal SVacc As Double ByVal SVdec As Double As Integer B_8168_start_tr_line2 s ByVal CardNo As Integer AxisArray As Integer ByVal DistX As Double ByVal DistY As Double ByVal StrVel As D...

Page 139: ...l MaxVel As Double ByVal Tacc As Double ByVal Tdec As Double ByVal SVacc As Double ByVal SVdec As Double As Integer B_8168_start_sa_line3 s ByVal CardNo As Integer AxisArray As Integer ByVal PosX As D...

Page 140: ...polation Dist specified relative distance of axis to move Pos specified absolute position of axis to move StrVel starting velocity of a velocity profile in unit of pulse per second MaxVel starting vel...

Page 141: ...Function Library 131 Note If the function is for secondary axes Axis 4 7 the AxisArray must have the axes indexing from the range of 4 7 Return Code ERR_NoError ERR_SpeedError ERR_AxisArrayError...

Page 142: ...secondary motion chip _8168_start_a_arc_ab Begin a absolute circular interpola tion for A B on secondary motion chip _8168_start_r_arc_cd Begin a relative circular interpolation for C D on secondary...

Page 143: ...8168_start_a_arc_ab I16 CardNo F64 Cx F64 Cy F64 Ex F64 Ey I16 DIR F64 MaxVel I16 _8168_start_r_arc_cd I16 CardNo F64 OffsetCx F64 OffsetCy F64 OffsetEx F64 OffsetEy I16 DIR F64 MaxVel I16 _8168_start...

Page 144: ..._start_r_arc_xy ByVal CardNo As Integer ByVal OffsetCx As Double ByVal OffsetCy As Double ByVal OffsetEx As Double ByVal OffsetEy As Double ByVal DIR As Integer ByVal MaxVel As Double As Integer B_816...

Page 145: ...center Cy specified Y axis absolute position of center Ex specified X axis absolute position of the end of arc Ey specified Y axis absolute position of the end of arc DIR Specified direction of arc CW...

Page 146: ...68_set_home_config function The direction of movement is determined by the sign of velocity parameter svel mvel Since the stopping condition of this func tion is determined by home_mode setting user s...

Page 147: ...eger ByVal erc_out As Integer As Integer B_8168_home_move ByVal AxisNo As Integer ByVal StrVel As Double ByVal MaxVel As Double ByVal Tacc As Double As Integer B_8164_escape_home ByVal AxisNo As Integ...

Page 148: ...ut erc_out 1 erc out when homing finish StrVel starting velocity of a velocity profile in unit of pulse per second MaxVel starting velocity of a velocity profile in unit of pulse per second Tacc speci...

Page 149: ...to configure the input mode of manual pulser _8168_pulser_vmove As this command is written the axis begins to move the axis according to the manual pulser input The axis will output one pulse upon re...

Page 150: ...polation relative mode only _8168_pulser_r_arc2 Pulser mode for 2 axis arc interpolation relative mode only _8168_pulser_r_line2s Pulser mode for 2 axis linear interpolation of secondary motion chip r...

Page 151: ...ByVal SpeedLimit As Double As Integer B_8168_pulser_pmove ByVal AxisNo As Integer ByVal Dist As Double ByVal SpeedLimit As Double As Integer B_8168_pulser_home_move ByVal AxisNo As Integer ByVal HomeT...

Page 152: ...ype pulse input ipt_mode 2 4X AB phase type pulse input ipt_mode 3 CW CCW type pulse input Inverse Reverse the moving direction from pulse direction Inverse 0 no inverse Inverse 1 Reverse moving direc...

Page 153: ...W 1 SpeedLimit Maximum tangential velocity in units of pulse per second MaxVel Maximum tangential velocity in units of pulse per second AxisArray Array of axis number to perform interpolation Example...

Page 154: ...done ByVal AxisNo As Integer As Integer Argument AxisNo axis number designated to start manual move Return Value 0 Normal stop condition 1 Reserved 2 Waiting for CSTA input 3 Waiting for an internal s...

Page 155: ...Function Library 145 12 At FH speed maximum velocity 13 In deceleration 14 Waiting for INP signal 15 Reserved...

Page 156: ...hen ALARM signal is active _8168_set_el Set the reacting modes of EL signal _8168_set_inp_logic Set the active logic of In Position signal input from servo driver Users can select whether they want to...

Page 157: ..._set_el ByVal AxisNo As Integer ByVal el_mode As Integer As Integer B_8168_set_inp ByVal AxisNo As Integer ByVal inp_enable As Integer ByVal inp_logic As Integer As Integer B_8168_set_erc ByVal AxisNo...

Page 158: ...nabled inp_logic setting of active logic for INP signal inp_logic 0 active LOW inp_logic 1 active HIGH erc_logic setting of active logic for ERC signal erc_logic 0 active LOW erc_logic 1 active HIGH e...

Page 159: ...gnal sd_logic 0 active LOW sd_logic 1 active HIGH sd_latch setting of latch control for SD signal sd_latch 0 do not latch sd_latch 1 latch sd_mode setting the reacting mode of SD signal sd_mode 0 slow...

Page 160: ...Syntax C C DOS Windows I16 _8168_get_io_status I16 AxisNo U16 io_sts Bit Name Description 0 RDY RDY pin input 1 ALM Alarm Signal 2 EL Positive Limit Switch 3 EL Negative Limit Switch 4 ORG Origin Swi...

Page 161: ..._status ByVal AxisNo As Integer io_sts As Integer As Integer Argument AxisNo axis number for I O control and monitoring io_status I O status word Where 1 is ON and 0 is OFF ON OFF state is read based...

Page 162: ...ble bit axis event _8168_map_axis_event Map interrupt factor to axis event For DOS _8168_get_int_type Get INT type _8168_enter_isr Enter interrupt service routine _8168_leave_isr Leave interrupt servi...

Page 163: ...r example End limit ALM etc This kind of interrupt cannot be masked The following talbe contains the definitions of event type interrupt factors By setting the rela tive bit as 1 cPCI 8168 can generat...

Page 164: ...us which can t be masked by _8168_set_int_factor The definitions in bit of error_int_status are as following error_int_status can not be masked 18 CSTA input is ON 19 3 1 Reserved Bit Interrupt Factor...

Page 165: ...op 18 31 Always 0 Bit Description 0 Normally Stop 1 Next command in buffer started 2 Command pre register 2 is empty and allow users to fill new command 3 Always 0 4 Acceleration Start 5 Acceleration...

Page 166: ...s_event This function is used for mapping an interrupt factor of axis to the event array created by _8168_int_enableA Users must use this function after the event array is created Once users use this...

Page 167: ...nterrupt service routine for card 0 11 Syntax C C DOS I16 _8168_int_control U16 cardNo U16 intFlag I16 _8168_set_int_factor I16 AxisNo U32 int_factor I16 _8168_get_int_type I16 AxisNo U16 int_type I16...

Page 168: ...pheventA I16 _8168_int_disableA I16 CardNo I16 _8168_map_axis_event I16 AxisNo I16 EventNo U32 EventIntfactor Visual Basic Windows B_8168_int_control ByVal CardNo As Integer ByVal intFlag As Integer...

Page 169: ...appened event_int event_int_status refer to event_int_status table error_int error_int_status refer to error_int_status table by bit sts DOS only 0 not this card s IRQ 1 this card s IRQ phEvent Window...

Page 170: ..._8168_set_general_counter Set the general counter _8168_get_target_pos Get the value of target position recorder _8168_reset_target_pos Reset target position recorder _8168_get_rest_command Get remai...

Page 171: ...reset_error_counter This function is used to clear the position error counter _8168_get_general_counter This function is used to read the value of the general counter _8168_set_general_counter This fu...

Page 172: ...6 _8168_set_command I16 AxisNo I32 cmd I16 _8168_get_error_counter I16 AxisNo I16 error_counter I16 _8168_reset_error_counter I16 AxisNo I16 _8168_get_general_counter I16 AxisNo F64 CntValue I16 _8168...

Page 173: ...yVal Pos As Double As Integer B_8168_get_rest_command ByVal AxisNo As Integer rest_command As Long As Integer B_8168_check_rdp ByVal AxisNo As Integer rdp_command As Long As Integer Argument AxisNo Ax...

Page 174: ...164 Function Library range 0 167777215 CntSrc Source of general counter 0 Command pulses 1 EA EB 2 PA PB Default 3 CLK 2 Return Code ERR_NoError ERR_PosOutofRange...

Page 175: ...gger_comparator Set trigger comparator _8168_set_trigger_type Set the trigger output type _8168_check_compare_data Check current comparator data _8168_check_compare_status Check current comparator sta...

Page 176: ...rance _8168_set_general_comparator This function is used to set the source and comparing value for general comparator When the source counter value reaches the comparing value the cPCI 8168 will gener...

Page 177: ...has 4096 limitation in DOS Note Please make sure that interruptions of this card do not happen frequently while the comparing trigger is active Other wise the comparing trigger will be stopped due to...

Page 178: ...8168_set_error_counter_check I16 AxisNo I16 Tolerance I16 On_Off I16 _8168_set_general_comparator I16 AxisNo I16 CmpSrc I16 CmpMethod I16 CmpAction F64 Data I16 _8168_set_trigger_comparator I16 AxisNo...

Page 179: ...yVal AxisNo As Integer ByVal CmpMethod As Integer ByVal Data As Double As Integer B_8168_check_compare_data ByVal AxisNo As Integer ByVal CmpSrc As Integer Pos As Double As Integer B_8168_check_compar...

Page 180: ...limit Action 0 INT only Action 1 Immediately stop Action 2 slow down then stop Action 3 reserved Tolerance The tolerance of step losing detection On_Off Enable Disable step losing detection On_Off 0...

Page 181: ...are data storage Start Start point of compare function End End point of compare function Interval Interval of compare function TableArray Array of comparing data Size Size of table array Device Select...

Page 182: ...locity AccTime The acceleration time Return Code ERR_NoError ERR_CompareNoError ERR_CompareMethodError ERR_CompareAxisError ERR_CompareTableSizeError ERR_CompareFunctionError ERR_CompareTableNotReady...

Page 183: ...te next motion command into it If the command buffer is not empty the users new command will overwrite previous Syntax C C DOS Windows I16 _8168_set_continuous_move I16 AxisNo I16 conti_flag I16 _8168...

Page 184: ...174 Function Library Return Value ERR_NoError Return value of _8168_check_continuous_buffer 0 Continuous buffer is not full 1 Continuous buffer is full...

Page 185: ...ve axes are specified by parameter AxisArray and the number of axes are defined by parameter TotalAxes in _8168_set_tr_move_all _8168_set_ta_move_all _8168_set_sr_move_all or _8168_set_sa_move_all Whe...

Page 186: ...ve_all I16 TotalAxes I16 AxisArray F64 DistA F64 StrVelA F64 MaxVelA F64 TaccA F64 TdecA F64 SVaccA F64 SVdecA I16 _8168_set_ta_move_all I16 TotalAxes I16 AxisArray F64 PosA F64 StrVelA F64 MaxVelA F6...

Page 187: ...art_move_all ByVal FirstAxisNo As Integer B_8168_stop_move_all ByVal FirstAxisNo As Integer Argument TotalAxes number of axes for simultaneous motion 1 48 AxisArray specified axes number array designa...

Page 188: ...s function is used to auto detect the maximum ID of connected slave I O module and start HSLink communication W_HSL_Stop This function stop communication of the HSL master to slaves Syntax C C DOS Win...

Page 189: ...ment card_ID Designated card number set_ID 0 for the first HSLink master IC 1 for the second sat_num The maximum slave ID connect to the HSL master card by the Return Value ERR_NoError ERR_ConnectInde...

Page 190: ..._Status I16 card_ID I16 set_ID I16 slave_No U8 sts_data I16 W_HSL_Slave_Live I16 card_ID I16 set_ID I16 slave_No U8 live_data Visual Basic Windows W_HSL_Connect_Status ByVal card_ID As Integer ByVal s...

Page 191: ...error Bit 3 is for CHK3 If Bit3 is 1 It mean that there are 3 times communication error Bit 4 BIT 5 and BIT 6 bits are for CHK7 If Bit4 Bit5 and Bit6 all are 1 It mean that there are 7 times communica...

Page 192: ...d the digital input value of the slave I O mod ule W_HSL_DIO_Channel_In This function is to read the digital input value of the specified chan nel on the slave I O module W_HSL_DIO_Out This function i...

Page 193: ...ata I16 W_HSL_DIO_Memory_Out I16 card_ID I16 set_ID U16 data_out I16 W_HSL_DIO_Memory_In I16 card_ID I16 set_ID U16 data_in Visual Basic Windows W_HSL_DIO_In ByVal card_ID As Integer ByVal set_ID As I...

Page 194: ...data of this slave I O module In this value Channel 0 data is assign to bit 0 Channel 1 data is assign to bit 1 etc channel_No Specify the digital input channel of the slave I O module which want to p...

Page 195: ...Set the on_off status for general purposed high speed DO pin _8168_hd_input Read status of general purposed high speed DI pin Syntax C C DOS Windows I16 _8168_d_output I16 AxisNo I16 value I16 _8168_...

Page 196: ...186 Function Library Argument AxisNo Designated axis number Value On Off Value for output Value 0 output OFF Value 1 output ON Return Value ERR_NoError...

Page 197: ...DA channel Syntax C C DOS Windows F64 _8168_read_ad I16 CardNo I16 ch I16 _8168_write_da I16 CardNo I16 ch F64 v Visual Basic Windows B_8168_read_ad ByVal card As Integer ByVal ch As Integer As Doubl...

Page 198: ...ion The minimum value for this function is 25 Notice that the _8168_int_control must be enable first _8168_h_timer This function is used for reading back the 32 bit timer counter value after the timer...

Page 199: ...han 10ms because of the inaccurancy of Windows timer Syntax C C Windows I16 _8168_set_h_timer I16 CardNo I32 T_base_Mulx I16 Enable I16 _8168_h_timer I16 CardNo I16 _8168_ssleep I16 CardNo I16 timer_n...

Page 200: ...or enable and 0 for disable timer_no 0 63 sleep_time_mulx according to set_h_timer base 1 is one timer base 2 is twice of timer base and so on miniSecond The minimum value is 0 1 Timeout_ms The minimu...

Page 201: ...n _8168_wait_d_cos This function is used for waiting the change of state event Once this function is called it will start WaitForSingleObject to wait the event No reset event is inside this functions...

Page 202: ...sNo I16 Logic I16 Enable I16 _8168_wait_hd_cos I16 AxisNo I32 Time_Out U16 _8168_get_cos_status I16 CardNo Visual Basic Windows _8168_set_d_cos ByVal AxisNo As Integer ByVal Logic As Integer ByVal Ena...

Page 203: ...change of state status 1 for happened Bit8 11 for HDI0 3 change of status status 1 for happened Bit15 is for change of state status when any bit has COS hap pened Return Value ERR_NoError ERR_AxisRan...

Page 204: ...194 Function Library...

Page 205: ...z DIN3 P3z DIN7 P3u DIN4 P3u DIN8 P4x HSOUT1 P4x H P4y HSOUT2 P4y H P4z HSOUT3 P4z H P4u HSOUT4 P4u H P5x HSIN1 LTCA P5x H P5y HSIN2 LTCB P5y H P5z HSIN3 LTCC P5z H P5u HSIN4 LTCD P5u H P6x STP1_OE P6...

Page 206: ...x 7 2 Dual purpose pins on CN3 6 The numbers 1 8 map to axis0 7 CN3 CN4 23 SD1 LTC1 PCS1 23 SD3 LTC3 PCS3 57 SD2 LTC2 PCS2 57 SD4 LTC4 PCS4 26 HSIN1 LTC5 SD5 26 HSIN3 LTC7 SD7 60 HSIN2 LTC6 SD6 60 HSI...

Page 207: ...d party products not manufactured by ADLINK will be covered by the original manufactur ers warranty X For products containing storage devices hard drives flash cards etc please back up your data befor...

Page 208: ...of battery fluid during or after change of batteries by customer user X Damage from improper repair by unauthorized ADLINK technicians X Products with altered and or damaged serial numbers are not ent...

Reviews: