Summary of Contents for ADLINK Technology PCI-8366+
Page 1
PCI-8372+/8366+ cPCI-8312H SSCNET Motion Control Card User’s Manual Manual Rev. 2.04 Revision Date: June 13, 2008 Part No: 50-1H001-1020 Advance Technologies; Automate the World.
Page 2
Copyright 2008 ADLINK TECHNOLOGY INC. All Rights Reserved. The information in this document is subject to change without prior notice in order to improve reliability, design, and function and does not represent a commitment on the part of the manufacturer.
Page 3
Getting Service from ADLINK Customer Satisfaction is top priority for ADLINK Technology Inc. Please contact us should you require any service or assistance. ADLINK TECHNOLOGY INC. Web Site: http://www.adlinktech.com Sales & Service: Service@adlinktech.com TEL: +886-2-82265877 FAX: +886-2-82265717 Address: 9F, No. 166, Jian Yi Road, Chungho City,...
Page 5
Table of Contents Table of Contents..............i List of Tables................v List of Figures ............... vii 1 Introduction ................ 1 Specifications............... 4 Environmental Conditions............ 9 Software Support ............... 10 Programming Library ............ 10 Motion Creator .............. 10 2 Installation ................ 11 What You Have..............
Page 6
Pulse Output (cPCI-8312(H) Only) ........39 4 Operation Theory .............. 41 Architecture................ 41 HOST PC and SSCNET Board ........41 SSCNet Communication ..........41 Frame Architecture ............42 Frame Introduction ............42 Single Motion ..............44 Single axis velocity motion ..........44 Single axis P to P motion ..........
Page 7
Driver information ............94 Servo Alarm ..............95 Control Gain Tuning............95 Control Gains ..............96 Mechanical resonance suppression filter ...... 98 Low pass filter ............. 101 Interrupt control..............102 4.10 Position Compare Function ..........105 4.11 Interlock Function ............106 4.12 Absolute Position System ..........
Introduction PCI-8372+/8366+ is a PCI bus interface card designed for per- sonal computer or industrial computer accompanied with a Mitsub- ishi MR-J2S-B type or SSCNET type servo amplifier. PCI-8372+ can control up to 12 servo amplifiers, where as PCI-8366+ can control up to 6 servo amplifiers.
Since all axes are synchronized within the SSCNet cycle, multi-axis interpolation has better synchronicity than tradi- tional pulse train control. The on-board DSP controls all calculations necessary for perform- ing various motion functions, thus, the host CPU loading is greatly reduced.
1.1 Specifications Item Description Bus Type for PCI board PCI Rev. 2.2, 33MHz Bus width for PCI 32-bit System Bus Voltage Memory usage 16KByte IRQ on PCI board Assigned by PCI controller ° ° Operating temperature C - 60 ° °...
Page 19
Item Description Motion Velocity Profile Trapezoidal & S-Curve Jog move Single axis P to P motion Single motion Change P/V on the fly Linear interpolation: up to 4 axes 2-axis Circular interpolation Home move 1 home mode Motion Function Start / End motion list Add linear trajectory Add arc trajectory: 2 axes Add Dwell...
Page 20
Item Description +Limit Switch x 12 (PEL) Sink or source type are selectable in all chan- -Limit Switch x 12 (MEL) nels (all channels must Proximity dog x 12 (ORG) be the same) General Purposed Input x 2 Input voltage range: 0 - (PCI board only) Logic H: 14.4 - 24V Logic L: 0 - 5V...
Page 21
Item Description Resolution: 16 bits Settling Time: 10mS Max. Output Range: ±10V Output Coupling: DC Output Impedance: 30W Max. Output Driving: ±5mA max. Analog Out DA x 2 Power On State: Float- Calibration: Self-Cali- bration Gain Error: ±3% Max. Offset Error: 1mV Max.
1.3 Software Support 1.3.1 Programming Library For customers who are programming their own applications, we provide Windows 95/98/NT/2000/XP DLLs for the PCI-8372+/ 8366+ and cPCI-8312 (H). It is shipped with these boards. 1.3.2 Motion Creator Motion Creator is a Windows-based utility to setup cards, motors and system.
Installation This chapter describes how to install the PCI-8372+/8366+ or cPCI-8312 (H). Please follow these steps below to install the board. 2.1 What You Have In addition to this User’s Guide, the package should also include the following items: SSCNET Motion Control Card ADLINK All-in-one Compact Disc for driver installation User’s Manual and Function Library.
2.3 cPCI-8312(H) Outline Drawing Figure 2-2: cPCI-8312(H) Mechanical Drawing SC1-1: SSCNET connector for Axis 0-5 SC1-2: SSCNET connector for Axis 6-11 H1A, H1B: First HSL Set H2A, H2B: Second HSL Set SP1: Daughter Board connector L1: Board Status LED in Green L2: Board Status LED in Red Installation...
Page 28
RST: Board Reset Button SW1: CardID JP5-JP7: H1A,H1B Communication Mode Selection JP8-JP10: H2A, H2B Communication Mode Selection Installation...
2.4 Hardware Installation 2.4.1 Installation Procedures 1. Turn off your computer and all accessories (printer, modem, monitor, etc.) connected to computer. Remove the cover from your computer. 2. Hardware installation: For PCI board: Select a 32-bit PCI expansion slot. PCI slots are shorter than ISA or EISA slots and are usually white or ivory.
date.EXE utility or change the power supply. If this board still in the faulty situation, please try to test it in another platform or replace a new board for testing again. If the application runs the MDSP_initial() function and it is suc- cessfully executed, the LEDs will turn on and off about every 1 second.
4. Wait the value become 0 and displays Download Fin- ished 5. Press “ROM Boot” and wait about 5 sec and done. 2.4.4 SSCNET Communication Test Utility We provide a test utility for SSCNET communication. After initial- ized, you can check the communication error counts from the dia- log.
2.5 Software Driver Installation 1. Auto-Run from the ADLINK ALL-In-One CD, choose Motion Control and then SSCNET series baord 2. Follow the installation wizard 3. Shut down your computer, and insert the SSCNET series board into a slot and then power up the computer 4.
2.6 CN1 Pin Assignment: SSCNet Connector on PCB Receptacle: 10220-52A2JL Manufacturer: 3M No Name I/O Function No Name I/O Function Signal Ground 11 Signal Ground TXD1+ Transmit+ 12 TXD1- Transmit - TXD2+ Transmit+ 13 TXD2- Transmit - RXD1+ Receive + 14 RXD1- Receive - Signal Ground 15...
2.7 CN5 Pin Assignment: PCI-8372+/8366+ I/O Connector Name Function Axis Name Function Axis A.COM Analog Ground Analog Output PEL1/MDI1 Positive End Limit Analog Output MEL1/MDI2 Minus End Limit PEL2/MDI4 Positive End Limit ORG1/MDI3 Origin Signal MEL2/MDI5 Minus End Limit PEL3/MDI7 Positive End Limit ORG2/MDI6 Origin Signal...
2.8 SP1 Pin Assignment: cPCI-8312(H) I/O Connec- Name Function Axis Name Function Axis Common for DO_COM General Digital Output Digital Output PEL1/MDI1 Positive End Limit General Digital Output MEL1/MDI2 Minus End Limit PEL2/MDI4 Positive End Limit ORG1/MDI3 Origin Signal MEL2/MDI5 Minus End Limit PEL3/MDI7 Positive End Limit...
Name Function Axis Name Function Axis OUT2+ Pulse signal (+) DIR1- Dir. signal (-) OUT2- Pulse signal (-) Analog Output DIR2+ Dir. signal (+) Analog Output DIR2- Dir. signal (-) A_COM Analog Ground Table 2-3: SP1 Pin Assignment Note: *MDI# is for general purpose input if it is not used for motion 2.9 CN3 Pin Assignment: TTL output Connector on bracket No Name I/O Function Axis No Name I/O...
Signal Connections Signal connections of all I/O’s are described in this chapter. Refer to the contents of this chapter before wiring any cables between the 8372+/8366+ and any motor drivers 3.1 SSCNet Servo Driver Connection PCI-8372+ PCI-8366+ Figure 3-1: Wiring for 6 Axes (PCI-8372+/8366+) Figure 3-2: Wiring for 12 Axes (PCI-8372+) Signal Connections...
Figure 3-5: Encoder Feedback Signals Please note that the voltage across each differential pair of encoder input signals (EA+, EA-), (EB+, EB-) and (EZ+, EZ-) should be at least 3.5V or higher. Therefore, the output current must be observed when connecting to the encoder feedback or motor driver feedback as not to over drive the source.
Connection to Open Collector Output To connect with an open collector output, an external power sup- ply is necessary. Some motor drivers can provide the power source. The connection between the SSCNET board, encoder, and the power supply is shown in the diagram below. Note that an external current limiting resistor R is necessary to protect the SSCNET board input circuit.
3.3 PEL, MEL, ORG, EMG and General Purpose DI Pin No. Name Description PEL1/MDI1 Positive End Limit / Axis 0 MEL1/MDI2 Minus End Limit / Axis 0 ORG1/MDI3 Origin Signal / Axis 0 Table 3-3: PEL, MEL, ORG, EMG and General Purpose DI PEL2/MDI4 Positive End Limit / Axis 1 MEL2/MDI5...
Page 47
Pin No. Name Description ORG10/MDI30 Origin Signal / Axis 9 PEL11/MDI31 Positive End Limit / Axis 10 MEL11/MDI32 Minus End Limit / Axis 10 ORG11/MDI33 Origin Signal / Axis 10 PEL12/MDI34 Positive End Limit / Axis 11 MEL12/MDI35 Minus End Limit / Axis 11 ORG12/MDI36 Origin Signal / Axis 11 General Digital Input...
3.4 General Purpose DO Pin No. Name Description DO_COM Common for Digital Output General Digital Output General Digital Output DO_COM Common for Digital Output Table 3-4: General Purpose DO Pinout Figure 3-10: General Purpose DO Note: For Example: R=4.7K and PWR=24V Signal Connections...
3.5 TTL Output The PCI-8372+/8366+ provides 6 general-purposed TTL digital outputs. The TTL output is available via CN3 of the bracket. Pin definition is defined in the below. Pin No. Name Function DGND Digital ground DGND Digital ground TDO1 Digital Output 1 TDO2 Digital Output 2 TDO3 Digital Output 3 TDO4 Digital Output 4...
3.6 Analog Output Pin No. Name Description A_COM Common for Digital Output Analog Output 1 Analog Output 2 Table 3-6: Analog Output Pinout The SSCNET board has two bipolar analog output channels. Figure 3-12: D/A Output Signals 3.7 Analog Input (cPCI-8312(H) Only) Pin No.
Figure 3-13: Analog Input 3.8 Pulse Output (cPCI-8312(H) Only) Pin No. Name Description P_GND Common ground of pulse interface OUT1+ Pulse signal (+) OUT1- Pulse signal (-) DIR1+ Dir Signal (+) DIR1- Dir Signal (-) OUT2+ Pulse signal (+) OUT2- Pulse signal (-) DIR2+ Dir Signal (+)
Figure 3-14: Wiring Diagram for OUT and DIR Signals Warning: The sink current must not exceed 20mA or the 2631 will be damaged! Non-differential type wiring example: Choose either OUT/DIR+ and OUT/DIR- to connect to driver’s OUT/DIR Figure 3-15: OUT/DIR SIgnal Selection Notice that users can choose one pair of OUT/DIR from SSCNET board to connect driver’s OUT/DIR.
Operation Theory This chapter describes the detail operation of the SSCNET board card 4.1 Architecture 4.1.1 HOST PC and SSCNET Board The communication between the host PC and the SSCNET board is through a 16Kbyte Dual Port RAM that is integrated inside the SSCNET board.
4.2 Frame Architecture In this section, the frame architecture, which is the basis of all motion functions, is described. 4.2.1 Frame Introduction A frame is a mathematical description of a piece of motion trajec- tory. When user gives a motion command, for example: start_sr_move(), the motion command will be translated into sev- eral frames.
Figure 4-1: Frame Flowchart Example of start_tr_move: [Step 1]: User calls start_tr_move(0, 10.0, 0, 5.0, 0, 0.5, 0.3) in his program. The meaning of each parameter: Axis No = 0, Dist = 10.0 mm, Stat velocity = 0, Maximum velocity = 5.0 mm/sec, Final velocity = 0, Tacc = 0.5, Tdec = 0.3 [Step 2]: DLL function start_tr_move() is invoked to solve the frames of this...
tv_change(), sv_change() or stopped by the functions tv_stop(), sv_stop(), emg_stop(). Two kinds of acceleration method are available. By using tv_move(), the acceleration is constant as shown in the in left dia- gram below. By using sv_move(), the derivative of acceleration, the ‘jerk’, is a constant as Illustrated in the right diagram below.
the function and provides information about the velocity profile and position method to achieve the target position. ‘t:’ The velocity profile is ‘Trapezoidal’. That is the accelera- tion and deceleration is a constant (shown in left diagram). ‘s:’ The velocity profile is ‘S-Curve’. This is a derivative of acceleration, ‘jerk’, and is a constant (shown in right dia- gram).
Figure 4-4: Motion Function Graphs Case 1 to case 2: The constant velocity period is reduced while the Tacc, Tdec, StrVel, MaxVel and FinVel remain unchanged. Case 2 to case 3: The constant velocity period vanished, and, StrVel, MaxVel and FinVel become smaller according to the ratio described below.
Note: 1.Each axis runs independently. Thus, a stop function for each axis must be issued separately. 2.All axes must be on the same card. 4.3.4 Multi axes P to P motion In this section, the following functions are discussed. start_tr_move_all(Length, *Axis, *Dist, *StrVel, *MaxVel, *FinVel, *Tacc, *Tdec) start_sr_move_all(Length, *Axis, *Dist, *StrVel, *MaxVel, *FinVel, *Tacc, *Tdec, *Tlacc,...
start_line_sa_move(Length, *AxisArray, *PosArray, StrVel, MaxVel, FinVel, Tacc, Tdec, Tlacc, Tldec) These four functions applies to any 2, any 3 or any 4 of the 12 axes in one card, so that these axes can “start simultaneously, and reach their ending points at the same time” and the ratio of speed between these axes is a constant value.
start_line_tr_move(2, Axis, Dist, 10.0, 50.0, 15.0, 0.3, 0.2) This cause the two axes (axes 0 & 2) to perform a linear interpola- tion movement, in which: Δ X = 30 mm Δ Y = 40 mm Start vector speed=10mm/sec, X speed=6mm/sec, Y speed = 8mm/sec Max.
Figure 4-7: 3-Axis Linear Interpolation Δ Δ Δ The speed ratio along X-axis, Y-axis and Z-axis is ( respectively, and the vector speed is: When calling those 3 axes linear interpolation functions, it is the vector speed, which defines the start velocity, ‘StrVel’, maximum velocity, ‘MaxVel’...
Note: 1. Each axis runs independently. Thus, a stop function for each axis must be issued separately. 2. All axes must be of the same card 4.3.6 Circular Interpolation Any 2 of the 12 axes of SSCNET board can perform circular inter- polation.
(1800,600) (0,0) Center (1000,0) Figure 4-9: Circular interpolation To specify a circular interpolation path, the following parameters must be clearly defined. Center point: The coordinate of the center of arc (In absolute mode) or the off_set distance to the center of arc (In relative mode) Angle: The moving angle, either clockwise (-) or counter clock- wise (+)
Figure 4-10: Stop a Moving Axis The sv_stop() function stops a specified ‘Axis’ with deceleration time period, ’Tdec’, and a “S-Curve” velocity profile during deceler- ation. See diagram below. Figure 4-11: Stop with Deceleration The emg_stop() function stops the a specified ‘Axis’ immediately without deceleration.
The tv_change() function changes the moving speed of a specified ‘Axis’ with acceleration time period, ’Tacc’, and a ‘Trapezoidal’ velocity profile during acceleration. The second parameter ‘Speed- Factor’ is used to define the new speed. For example, if the speci- fied axis start its motion using tv_move() function and the ‘MaxVel’...
Note: 1. All change speed on the fly function calls can be applied any time when an axis is moving, no matter which function started its motion. 2. tv_change(), sv_change() with ‘SpeedFactor’ = 0 doesn’t have the same affect as tv_stop() , sv_stop(). For tv_stop(), sv_stop() will complete its motion, while tv_change(), sv_change() will set speed to zero.
Theory of position compensation This function is to change the target position defined originally by the previous motion functions. After changing position, the axis will move to the new target position and totally forget the original posi- tion. This operation can only be applied on the constant velocity section.
Compen_Value AppliedPos Final Position Note Not allowed Table 4-2: set_position_compensate Values 4.4 Home move In this section, the following functions are discussed. set_home_mode(Axis, HomeMode) home_move(Axis, StartVel, MaxVel, FinVel, Tacc) After configuring set_home_mode(), user home_move() function to command the axis to start returning home.
1. Accelerate from StrVel to MaxVel. 2. Travel with constant velocity ‘MaxVel’ until ORG turns 3. Slow done to stop. 4. Return and accelerate to ‘FinVel’. 5. Travel with constant velocity ‘FinVel’ until ORG turn Off. 6. Slow done to stop. 7.
start_motion_list(), user can call the functions discussed in next section to piece-wisely extend the trajectory. start_motion_list() automatically checks whether the previous motion list is finished or not. If the previous list is not completed it will return an error. The first parameter ‘Length’ defines the total number of axes that will be involved in the continuous motion.
end_motion_list() The resulting 2-D trajectory is: Figure 4-17: Example 2-D Trajectory Adding an arc trajectory When any of the following 8 functions are executed add_arc_tr_move(), add_arc_sr_move() add_arc_ta_move(), add_arc_sa_move() add_arc2_tr_move(), add_arc2_sr_move() add_arc2_ta_move(), add_arc2_sa_move() A 2-D arc will be added to the continuous motion trajectory. The first 4 are used after the start_motion_list() function with ‘Length’=2, and the parameter definitions of this added arc func- tions the same as those of the single motion circular interpolation.
Figure 4-20: Example 2 - Arc Trajectory Figure 4-21: Velocity vs. Time Add dwell When add_dwell() function is executed, the motion will be freezed for a specified period of time, definied by parameter ‘Sec‘ in unit of second. The following is an example: Example: (Suppose both axes 0 &...
Figure 4-24: Line & Line Figure 4-25: Line & Arc Figure 4-26: Arc & Arc smooth_enable() function could be executed second or more rimes in order to disable smoothing or to change smoothing radius ‘R’ as program’s need. For example: (Suppose both axes 0 &...
end_motion_list() Figure 4-27: Smoothing Example Figure 4-28: Velocity vs. Time Note: 1. Smoothing is also applicable for 3D and 4D. 2. The smoothing trajectory guarantees continuous velocity and acceleration at the smoothing point. 4.4.3 Declaration for End of Motion List In this section, the following function is discussed.
be translated into frame data such that the SSCNET board can understand. This function takes no parameters. 4.4.4 Start/Stop command In this section, the following functions are discussed. start_cont_move(Void) stop_cont_move(Void) After building a trajectory by either on-line (start/end motion list) or off-line (load trajectory file) method, user can call the start_cont_move() function to perform the continuous motion tra- jectory.
feedback…etc. This section will concentrate on the motion related I/O and their function calls. 4.5.1 Position control and feedback In this section, the following functions are discussed. get_position(Axis,*Pos_F, *Pos_C) set_position(Axis,Pos) get_target_pos(Axis,*TargetPos) get_move_ratio(Axis, *PulsePerMM) set_move_ratio(Axis, PulsePerMM) Get position information The SSCNET board controls servo drivers & motors via an SSC- Net protocol.
Since the target position is a software recorder for the motion end position, it doesn’t work under the following conditions: Case 1: Velocity motion is applied, because velocity motion have no end position information. Case 2: emg_stop(), tv_stop() and sv_stop() are executed, because motion stop before motion completed.
4.5.2 Velocity Feedback In this section, the following function is discussed. get_velocity(Axis,*Vel_F, *Vel_C) This function is used to retrieve the velocity information. Two velocity values can be retrieved. ‘*Vel_F’: Feedback velocity, just as for position feedback, the SSCNET board receives the velocity feedback via SSC- Net communication and is refreshes on each SSCNet cycle and is measured by the servo driver.
PEL signal indicates the end-limit in the positive (plus) direc- tion. The MEL signal indicates the end-limit in the negative (minus) direction. When the axis is moving towards the positive direction, the axis will be stopped when the PEL signal becomes active, while the MEL signal is no affect in this case, and vise versa.
are extremely useful in protecting a user’s mechanical system, as it can operate as a physical limit switch, when configured correctly. The software limit works because the DSP of the SSCNET board compares the current feedback position with the setting of the soft- ware limit value every SSCNet cycle.
Name Value & Description 1: Axis not Servo ON Not_Servo_ON 0: Axis is Servo ON Table 4-3: Axis Status Not_In_Control: (Bit 0) When initializing the SSCNET board card, the on-board DSP com- mands the SSCNet controller IC to search all axes for SSCNet servo drivers.
Name Description After lauching velocity change command, this bit will be In_V_Change ON till the change is done After lauching position change command, this bit will be In_P_Change ON till the change is done MEL_ON Axis touches the positive limit switch PEL_ON Axis touches the negative limit switch ORG_ON...
You can get the return code from get_MDI_status(CARD0, 9) and get_MDI_status(CARD0, 10) to read input status. If you don't set the mode to 1, you still can read the MDI status by this function. 4.6 General Purpose IO General purpose I/Os are input and output signals that user can freely use.
Below are examples of connecting the input signals with an external circuit. The input circuit can be connected to an encoder or motor driver, if it is equipped with: (1) a differential line driver or (2) an open collector output. Connection to Line Driver Output To drive the SSCNET board encoder input, the driver output must provide at least 3.5V across the differential pairs with at...
Figure 4-32: Open Collector Circuit Configuring encoder counter Each encoder counter can be configured to receive one of the following three types of signals using the function call set_cnt_iptmode(). 1. A/B phase (Quadrature pulse signal) 2. CW/CCW (Dual pulses signal) 3.
when the phase of the EA signal leads the phase of the EB sig- nal. A timing waveform is illustrated below. Figure 4-33: A/B Phase Timing CW/CCW Mode In this mode, the pulse from EA causes the counter to count up, while EB will cause the counter to count down.
4.6.2 DIO In this section, the following functions are discussed. get_di_status(CardID, ChNo, *Sts) set_do_value(CardID, ChNo, Value) Each PCI-8372+ board has 2-isolated digital output and 2 isolated digital input channels. Use the get_di_status() function to retrieve the current DI status, and set_do_value() to set the DO value. 4.6.3 DA In this section, the following functions are discussed.
4.6.4 AD In this section, the following functions are discussed. set_ad_function(CardID,Enable, AD_gain, AD_Last, AD2_src) get_da_value(CardID,ChNo,*Value) There are two analog input channels on the cPCI-8212H. It is used for sensing anlog output device ranged from –10V to +10V. Users can choose the gain by 1, 2, or 4. It means that the input voltage range could be +/-10V, +/-5V and +/- 2.5V for optimizing input res- olution.
Page 97
we have done this when this board is produced. The procedure of tuning these analog channels are as following: 1. Tune the on board +5V generator to exactly +5.0000V by measuring it from JP1 connector on daughter board. PCI-8372+/8366+ don’t have this feature. 2.
4.7 Driver Management 4.7.1 Driver parameter In this section, the following functions are discussed. get_servo_para(Axis, ParaNo,*Value) set_servo_para(Axis, ParaNo, Value) get_servo_para_all(Axis, *Value) set_servo_para_all(Axis, *Value) save_servo_para(I16 Axis) set_servo_para_default(I16 Axis) With the SSCNET board, servo parameters read/write becomes very easy using function calls listed above. read current parameter...
Page 99
MR-J2SB Instruction Setting Symbol Name Unit Manual Parameter Range *MCA For manufacturer’s settings Pr.04 0000H *MTR For manufacturer’s settings Pr.05 *FBP Feedback pulse number Pr.06 0,1,6,7,225 *POL Direction of motor rotation Pr.07 Auto-tuning Pr.08 0000H~0004H Servo response setting Pr.09 0001H~000FH Forward rotation torque lim- 0~Maximum Pr.10...
MR-J2SB Instruction Setting Symbol Name Unit Manual Parameter Range For manufacturer’s settings Pr.29 0001H Zero speed Pr.30 0~10000 Error excess alarm level Pr.31 kpulse 1~1000 Option function 5 Pr.32 0000H~0002H For manufacturer’s settings Pr.33 0000H~0113H PI-PID change position Pr.34 0~50000 droop For manufacturer’s settings Pr.35...
Page 101
To be able to use the monitoring function, users must understand the configuring and operating procedures. Configuring procedures: Configuring procedure is necessary before a monitor function can be started. There are two main instructions during configuration: 1. set_monitor_channel This function is used to set the monitoring target. This function must be executed before monitoring can started.
The first parameter ‘Axis’ specifies the axis. The remaining four parameters are used for the monitoring targets. The relationship between set values and monitoring targets are list below. Value Description Unit Not Used Feedback pulse accumulation Pulse (Reserved) Motor revolution speed 0.1rpm (Reserved) Accumulated pulse...
Page 103
Value Description Unit Origin revolution counts Origin position within one revolution Pulse (Reserved) (Reserved) (Reserved) Alarm status AL-1 Alarm status AL-2 Alarm status AL-3 Alarm status AL-4 Alarm status AL-5 Alarm status AL-6 Alarm status AL-7 Alarm status AL-8 Alarm status AL-9 Alarm status AL-E (Reserved) (Reserved)
Page 104
Value Description Unit (Reserved) (Reserved) (Reserved) (Reserved) (Reserved) INP (in position) Active: 1, Inactive: 0 Velocity Command Pulse/sec DA1 Value DA2 Value Speed Feedback External Encoder Feedback Command Pulse Table 4-7: Monitoring Targets 2. set_monitor_config This function is used to set the monitoring configuration, such as sampling period, trigger condition…etc.
The first parameter ‘Axis’ specifies which axis. Other parameters are listed below. Parameter Name Description This variable is used to define the trigger source. Trigger_Select: Value = 0: No trigger Value = 1: CH0 as trigger source, going high Value = 2: CH1 as trigger source, going high Trigger_Select Value = 3: CH2 as trigger source, going high Value = 4: CH3 as trigger source, going high...
Page 106
The first parameter ‘Axis’ specifies which axis. The remaining four parameters are used to retrieve monitoring data from the monitor- ing channels. This function returns a value immediately and carries out real time monitoring of specified monitoring targets. 2. Normal monitoring Normal monitoring is data sampling with the help of the on-board DSP.
Table 4-9: Data Array Offset 4.7.3 Servo Information In this section, the following function is discussed. get_servo_info(Axis,*ServoInfo) This function is used to retrieve the servo driver’s status informa- tion. The parameter ‘*ServoInfo’ carries the information about servo driver’s status in individual bit’s: Bit 0 In Ready-ON Bit 1...
Bit 3 In course of zero speed Bit 4 Pass through Z phase of servo motor Bit 5 In Torque limit Bit 6 In Alarm Bit 7 In warning Bit 8 Reserve Bit 9 Reserve Bit 10 ~ 14 Reserved Bit 15 In course of Speed limit Bit 16 ~ 31...
kept by the SSCNET board and users can retrieve the info using the following two functions. To read the servo driver’s static info, use understand_driver() To read servo motor’s static info, use understand_motor() 4.7.6 Servo Alarm In this section, the following functions are discussed. get_alarm_no(Axis,*AlarmNo) alarm_reset(Axis) When a fault occurs, the servo driver will stop the motor and report...
get_LP_filter(Axis,*ON_OFF) 4.8.1 Control Gains The first 4 functions are used to set/read the gain controls of the servomotor control system. There are 6 control gains, and they are PG1, VG1, VIC, PG2, VG2, and FFC. The following are some simple description of the control gains, for more information refers to the “Instruction Manual”...
Page 111
Auto-Tuning mode The MR-J2S-B servo driver has as read-time auto tuning function, which can automatically estimate the machines characteristic and set the optimum control gain values in real time. There are two Auto-Tuning modes: Auto-Tuning mode 1: In this mode, the load inertia moment of a machine is estimated, and all control gains are set automatically, creating a machine response frequency that matches the user’s requirements (RSP).
The function call set_auto_tune() is used to select the auto-tuning or manual tuning mode with the parameter ‘Mode’ specifying the operation mode. If Auto-tuning mode is selected, ‘RSP’ specifies the user’s machine response frequency requirements, while in manual mode it’s not applicable. ‘GD2’ specifies the load inertia moment of a machine.
Notch filter The notch filter is a filter function, which decreases the gain of the specific frequency (notch frequency) and gain decreasing depth. Figure 4-36: Notch Filter Note: The machine resonance suppression filter is a delay factor for the servo system. Hence, vibration may increase if you set a wrong resonance frequency or a too deep notch.
A deeper notch provides better resonance suppression but increases the phase delay and may increase vibration. The notch frequency can be set with the parameter ‘NotchDepth’. The setting values and corresponding notch gain are listed in the table below. Setting Depth (Gain) -40db -14db -8db...
Setting Control Selection Valid_0 - The adaptive vibration sup- pression control is enabled with normal sensitivity of detecting machine reso- nance. Valid_1 - The adaptive vibration sup- pression control is enabled with large sensitivity of detecting machine reso- nance. Hold - filter characteristic generated so far is held, and detection of machine resonance is stopped.
The low pass filter can be enabled or disabled using the parameter ‘ON_OFF’. ‘ON_OFF’ = 0, Disabled ‘ON_OFF’ = 1, Enabled Note: In a mechanical system where rigidity is extremely high and resonance s difficult to occur, setting the low pass filter to be ‘Disabled’...
Figure 4-37: Interrupt Control Users can either set a call back routine that will be executed when an interrupt occurs, or create a thread to wait for an event that will be triggered when an interrupt occurs. To enable or disable the interrupt generated from the SSCNET board, use the int_control() function.
“Source” = 0 - 11, for Axis 0 - Axis 11 respectively. Bit of ‘IntFactor’ Name Description Positive Limit Switch Negative Limit Switch Home Switch Servo Ready In Position Index signal passed ZSPD Zero Speed Torque Limit reached Alarm signal on Servo Warning on HOME Home Move completed...
Bit of ‘IntFactor’ Description Compare_Counter_CH1 Compare_Counter_CH2 Table 4-17: GPIO Interrupts After setting the interrupt source and factors, the interrupt signal can be detected by using either a call back routine or a event wait- ing thread. Note: For the PCI-8372+, the number of controllable axis is “12”, Thus: Source: 0 - 11 is for axis 0 - 11 individually, Source: 12 for system,...
Each axis of the SSCNET board has 2-position compare chan- nels. After setting the channels using set_compare(), the DSP of the SSCNET board compares the feedback position on each SSC- NET cycle with “CMP#Pos” for each channel. The comparison includes the direction. The user can specify the compare succeed condition to be any of the following: Direction = 0, whenever feedback across ComparePos...
Figure 4-38: DSP Action Graph Figure 4-39: Interlock Area Interlock function is much like a crossroad semaphore. In some applications, two independent axes will work on the same region occasionally. In the past, users must take care these two axes’ movement to prevent collision.
get_interlock(…) will retrieve above parameters for users’ to check. Note: 1. Enable=1 means enable this function and 0 means dis- able 2. Time means slow down time when interlock happens 3. X1,X2,Y1,Y2 form a interlock region 4.12 Absolute Position System In this section, the following function is discussed.
The formal procedure to use this features are as followings: Launch home_move() function to complete homing. Check if the home position is correct Launch save_abs_position() to store the ABS position as an origin position reference. Next time, when SSCNET motion control card starts, users don’t need to launch home_move() anymore.
sider the continuous compared with triggering pulse output feature. Figure 4-40: Trigger Output SSCNET motion board has a compare mechanism of each axis that is operated by DSP. DSP will compare the receiving counter with users’ desired value and do the actions in one SSCNET cycle if the position is achieved.
Figure 4-41: Triggering Frequency Under 500Hz Before using this feature, users must map on-board digital output channel to axis’ comparator. The mapping could be one ouptput channel to one comparator or two output channels to one compar- ator. For example, users can map Dout Channel 0 to axis2’ comparator0 and Dout Channel 1 to axis3’...
Page 126
< Example: Dual trigger pulses output by comparing two Table in one axis > Table_Data1[10]={1500,2000,2500,3000,3500,4 000,4500,5000,5500,6000}; Table_Data2[10]={1800,2300,2800,3300,3800,4 300,4800,5300,5800,6300}; I16 AxisNo=1; // Normal high setting map_dout_and_comparator(0, 0, AxisNo, 0 ,1); map_dout_and_comparator(0, 1, AxisNo, 1 ,1); // Build Compare Table1,2 from index 0 to 9, totally 10 points link_dout_and_compare_table(0, 0, 0, 9,Table_Data1);...
Figure 4-43: Negative Move 4.14 Sequence Motion Control SSCNet has the property of the deterministic time, which is 0.888 ms. Theoretically, the motion command will be passed down to DSP with hand-shaking way. It takes two or three cycle times to complete the delivery and execute the motion command.
unit in this sequence motion control. Properly group some of those frames into one pattern. Simply put, a pattern contains many frames inside. The motion pattern can be reused and in the form of T-curve, S-curve, combined T-curve and S-curve, or arbitrary velocity profile.
Figure 4-44: Conceptual Flow Chart - Timing A As the diagram, you can see the timing chart of the 4 axes. In this case, we only control 4 axes –axis 0, 1, 2 and 11. As soon as hav- ing the complete timing chart, you can segment the velocity profile and obtain the frames that are based on the rule introduced ear- lier.
Figure 4-45: Conceptual Flow Chart - Timing B There are totally 40 frames in this example. 2. Create Pattern In this step, we can group several frames into one pattern. For example, we can have the patterns as follows: Figure 4-46: Conceptual Flow Chart - Pattern The dash block represents the pattern.
depending on the axis 0. Pattern 7 will activate depending on axis 1. Here, users can have three selections to meet the requirement: Position compare: While the axis moves through certain position, it can let the other axis start to move. Like pattern 5, it will start to move while the axis 0 passes through point Velocity transition: The pattern can activate while the veloc- ity of the other axis is at the end of the acceleration or the...
Figure 4-47: Conceptual Flow Chart - Buffers A The sequence is an abstract object. It collects several patterns as a group. The pattern is a substantial object. It contains the infor- mation of frames. Inside the board, the first three patterns can be stored in those three pattern buffers in advance.
In this case, we let every axis to be as a sequence. Group the pat- terns and we can have the sequence as follows: Sequence Contains Sequence 0 P0 to P3 Sequence 1 P4 to P6 Sequence 2 Sequence 3 Table 4-19: Sequences Then, you can use the API to link the synchronous relation.
Page 137
insert_pattern_to_seq_buffer(0, 0, 3, SynAxes,0,0,0,0); insert_pattern_to_seq_buffer(0, 0, 4, SynAxes,0,0,0,0); insert_pattern_to_seq_buffer(0, 0, 5, SynAxes,0,0,0,0); start_seq_move(0, 0x3); Working with more than 3 patterns in one sequence If the patterns are morer than three, users must know how to use the sequecen command buffers. There are three command buffers in each sequence.
Motion Creator After installing all the hardware according to Chapters 2 and 3, it is necessary to correctly configure all cards and double check before running. This chapter gives guidelines for establishing a control system and manually testing the SSCNET board cards to verify correct operation.
Figure 5-1: Motion Creator Main Window 5.2.1 Component description Toolbar Use Motion Creator’s toolbar, to access the following functions Figure 5-2: Load Servo Parameter From File Load the servo parameter file from saved file. This file records the servo parameters of all axes in all cards. Motion Creator...
Figure 5-3: Save Servo Parameter to File Save the servo parameters to file with a file extension “par”. Language Support Click the “Language” item in the menu bar, and select the lan- guage you want to display. (The language you select must be available in your operation system, for example: only Chinese-Tra- ditional and English are available in Windows NT Chinese-Tradi- tional Version.
Axis list table If you click one of the cards in the card list table, the axis list table lists all the axes connected to this card. The "Station No" column display the ID of each axis, the "Axis No" column display the index of the axis, the "Motor Type"...
Figure 5-6: Software Version Information Motion Creator...
Page 150
Command buttons The functionality of command buttons are described following I/O Configure General purpose digital input and output General purpose Analog output External Encoder setting Tuning Trigger setting Basic servo driver parameter setting Multiple channel display and adjustment XY-Interpolation Circular interpolation Linear interpolation 2-D graph of command and feedback trajectory 2-Axes Operate...
5.2.2 Operation Steps 1. Check if all the SSCNET cards, which are plugged into the PCI-Bus show on the “Card List” table, then click each card in the card list table and check if all the axes are displayed. If not all of the axes listed in the table, please quit MotionCreator and restart again.
5.3.1 Component description The General Purpose IO Operation Window is divided into several frames. Each frame is described as follows: General Purpose DI/O There are two digital input and 2 digital output channels in SSC- NET board 1. The circular buttons show the status of two digital input channels.
Parameter The corresponding parameter for the external encoder 5.3.2 Operation Steps The General Purpose IO Operation Window accesses the digital input, output and analog output value of the SSCNET board. The operation steps are described as follows: General Purpose DI/O Digital input: the circular buttons display and update the cur- rent status of two digital input channels in the scan rate of 100 ms.
5.4 General Purpose IO Operation Window (cPCI- 8312H) General Purpose IO Operation Window appears when clicking “I/ O Configure” button in the Main window. Figure “I/O Configure” shows the General Purpose IO Operation Window. Figure 5-8: General Purpose IO Operation Window Component description The General Purpose IO Operation Window is divided into several frames.
General Purpose DA/AD There are two analog output and input channels in SSCNET board. The current value textboxes read back the current value of two analog output channels. Enter the analog output value in the textbox then click the “Set Value”...
General Purpose DI/O Digital output: click the rectangle button to write the digital output value for each digital output channel. General Purpose AD/DA Analog output: enter the analog output value in the textbox then click the “Set Value” button to write the analog output value.
Figure 5-9: Pulse Output 5.4.3 Component description Apply To Specify the axis that uses pulse output function. Notice that the axis number can’t be overlapped by SSCNET axis. Mode Select the attribute of pulse output signal. 5.5 Tuning Window Tuning Window appears when clicking “Tuning” button in the Main window.
This frame provides a flexible choice to configure the trigger. Once the signal is triggered, the data from the four channels will be plot- ted on the response diagram. Source: select one of the channel signal to be the trigger source Value: trigger value Slope: specify the rising edge or falling edge trigger...
This frame is used to construct a motion. Velocity profile: Select the Trapezoidal or S-Curve velocity profile. Start Velocity Set the start velocity of motion in unit of PRM. Maximum Velocity: Set the maximum velocity of motion in unit of PRM. Final Velocity: Set the finvel velocity of motion in unit of PRM.
Figure 5-16: Response Diagram This diagram displays the waveform from four channels in different colors. Timing Line There are two timing lines in the response diagram, and the time difference between two lines will shows in the left corner of response diagram.
Click “Stop” button will cause SSCNET board to decelerate to stop. 5.5.2 Operation Steps The operation steps are description as follows: Click “Channel” tab to specify the signal data, and sample interval Click “Trigger” tab to set trigger source, trigger value, slope, Sample Number, and pretrigger sample No.
Timing Move the cursor to the “timing line”. Drag the “timing line to” any position. The textbox in left corner in “Response Diagram” will indi- cate the time difference between two lines. Note: The range of Y-Axis in the response diagram is –1000 to 1000, if the scaled data exceeds this range, it will not display on the diagram.
5.6.1 Component description Position Graph This graph shows the feedback and command position of the interpolation dynamically. Parameter Page The parameter page affords a friendly and intelligent interface to configure the interpolation motion. Control Panel The control panel starts or stops the interpolation motion, set the horizontal, vertical axis for the interpolation, and scale or shift the data.
5.7 Two-Axes Operation Window Two-Axes Operation Window appears when clicking “2-Axis Oper- ate” button in the Main window. The following figure shows the Two-Axes Operation Window. This window affords the simple con- trol of motion (relative or absolute trapezoidal mode), and displays the velocity profile, driver status for the users.
Page 167
both the value and sing is effective. –100.0 means 100.0 in minus direction. Maximum Velocity: Set the maximum velocity of motion in unit of PRM. In “Absolute Mode” or “Relative Mode”, only the value is effective. ie, -5000.0 is the same as 5000.0. In “Cont.
Play keys Right play button: Click this button will cause SSCNET board start to outlet pulses according to previous setting. In “Relative Mode”, it cause axis move Positive Distance. In “Absolute Mode”, it cause axis move to Positive Position. Left play button: Click this button will cause SSCNET board start to outlet pulses according to previous setting.
5.8 Single Axis Operation Window Single Axis Window appears when clicking “1-Axis Operate” but- ton in the Main window. The following figure shows the Single Axis Window. This window supports the full control of a single axis motion, and displays the velocity profile and driver status. Figure 5-21: Single Axis Operation Window 5.8.1 Component description Motion Mode Frame...
Page 170
both the value and sing is effective. –100.0 means 100.0 in minus direction. Maximum Velocity: Set the maximum velocity of motion in unit of PRM. In “Absolute Mode” or “Relative Mode”, only the value is effective. ie, -5000.0 is the same as 5000.0. In “Cont.
Left play button: Clicking this button will cause the SSCNET board to start outputting pulses according to a previous setting. In “Relative Mode”, it cause axis move Negative Distance In “Absolute Mode”, it cause axis move to Negative Position In “Continuous Mode”, it cause axis start to move according to the velocity setting Stop button: Clicking the “Stop”...
5.8.3 Interrupt Configration Window If you press the “Interrupt” button, you will see a window below: It is for users to set interrupt factor the axis. The setting will be automatically saved by MotionCreator. It is userful to users to test the interrupt functions.
5.8.4 Operation Steps Selecting a motion mode: Absolute Mode: “Position1” and “position2” will be used as absolute target position for motion Relative Mode: “Distance will” be used as relative dis- placement for motion. Home Mode: The Motion keeps going until the ORG sig- nal is active.
Driver Parameter Configuration Window Driver Parameter Configuration Window appears when clicking “Servo Parameter” button from the Main window. The following fig- ure shows the Driver Parameter Configuration Window. This win- dow supports full access to all servo driver parameters. Figure 5-24: Driver Parameter Configuration Window 5.9.1 Component description Servo Driver Parameter Table This table lists all the accessible servo driver parameters, and the...
Page 175
and switch power off once, then switch it on again to make that parameter setting valid. Description: explains the meaning of the parameter briefly Default Value: the default setting of the parameter Current Value: the current value of the parameter Unit: the unit of the parameter Setting Range: the range of the parameter.
5.9.2 Operation Steps Click “Read Parameter” button to read current value of all parameters from servo driver. Click the parameter you want to adjust in the parameter list table. Input the value, and click the “modify” button to modify the setting value of the parameter.
Appendix 6.1 MR-J2S-B Alarm List When any alarm has occurred, eliminate its cause, ensure safety, then deactivate the alarm, and restart operation. Not doing so can cause injury. Power supply voltage dropped. AL.10 Undervoltage MR-J2S-B: 160V or lessMR-J2S- oB1: 83V or less AL.12 Memory alarm 1 RAM memory fault...
Page 178
Current that flew is higher than the AL.32 Overcurrent permissible current of the servo amplifier. Converter bus voltage input value- AL.33 Overvoltage exceeded 400V. AL.34 CRC error Bus cable is faulty. Command pulse fre- The pulse frequency of the input AL.35 quency alarm command pulses is too high.
6.2 MR-J2S-B Warning List If E6, E7, E9 or EE occurs, the servo off status is established. If any other warning occurs, operation can be continued but an alarm may take place or proper operation may not be performed. Eliminate the cause of the warning according to this section. Use the optional servo configuration software to refer to the cause or warning.
6.3 Driver Parameter List MR-J2SB Instruction Symbol Name Unit Setting range Manual parameter *AMS Amp setting Pr.01 0000H~0001H *REG Regenerative resistor Pr.02 0000H~0011H *MTY For manufacturer’s settings Pr.03 0080H *MCA For manufacturer’s settings Pr.04 0000H *MTR For manufacturer’s settings Pr.05 *FBP Feedback pulse number Pr.06...
Page 181
MR-J2SB Instruction Symbol Name Unit Setting range Manual parameter Monitor output 2 offset Pr.28 -999~999 For manufacturer’s settings Pr.29 0001H Zero speed Pr.30 0~10000 Error excess alarm level Pr.31 kpulse 1~1000 Option function 5 Pr.32 0000H~0002H For manufacturer’s settings Pr.33 0000H~0113H PI-PID change position droop Pr.34...
6.4 Handshake Procedure SSCNET board is composed of a DSP and other control units on it. The DSP is a microprocessor for managing all devices on the board. Once the CPU on host PC needs to communicate with DSP, it must use dual port RAM on SSCNET board to do it. On the same way, the DSP must communicate host CPU via dual port RAM.
Step Action OK Reponse Error Response Error Reason Card_ID_Out_Of_Ran The CardNo parameter of this No Error function invalid In the same program, card No Error Card_Reinitialized dosen’t close normally then want to initial again Card_Not_Ready Tim- Use KernelUpdate.exe to Check “DSP_OK”=1 eOut=200ms reset DSP and try again Card_ReClose_Fail...
6.4.3 Card Soft Reset Procedure We strongly recommend you using kernelupdate.exe utility to reset board. The following table describe the procedure of MDSP_reset(). Step Command OK Reponse Error Response Error Reason ROM data corrupt. LED Flash one No LED Flashing or Please download ROM by one and off LED always ON...
Step Action Item Error Response Error Reason “DSP_OK” is 0, please reset the Card_Not_Ready card. Check Card MDSP_Initial() failed, please Card_Not_Initial restart program “Initial_Status” is not at finished Check DSP DSP_Not_Ready state. Please restart program. Axis is out of control. Check con- Axis_Not_In_Control nection and restart program Axis is in servo alarm.
6.4.5 Motion Command Timing Figure 6-1: PCI-8372+ Single Motion Command Timing Chart Signal Channel: [1] DSP processing time synchronized with SSCNET cycle (low voltage level duration ) DSP codes has two process: Synchronized and Non-Syn- chronized process, this channel displays the processing time of synchronized process.
Page 187
Label number: (1)start_tr_move() command starts (1~2) Trajectory calculation time on host (2)Send motion-download command to DSP. DSP will take some time (the Peak) to transfer the trajectory data and set a “transferring done flag” for host. *(2~3) Host waits the “transferring done flag” and get a mutex from system for continue (3)Send motion-go command to DSP and DSP will take some time(the Peak) to set a “motion go”...
6.5 cPCI-8312H High Speed Link Initial Guide cPCI-8312H has two master chips of High Speed Link on the board. So it has all the features of HSL just like PCI-7852. In this chapter, we will introduce how to to initial the HSL functions on this board.
Warranty Policy Thank you for choosing ADLINK. To understand your rights and enjoy all the after-sales services we offer, please read the follow- ing carefully. 1. Before using ADLINK’s products please read the user man- ual and follow the instructions exactly. When sending in damaged products for repair, please attach an RMA appli- cation form which can be downloaded from: http:// rma.adlinktech.com/policy/.
Page 190
3. Our repair service is not covered by ADLINK's guarantee in the following situations: Damage caused by not following instructions in the User's Manual. Damage caused by carelessness on the user's part dur- ing product transportation. Damage caused by fire, earthquakes, floods, lightening, pollution, other acts of God, and/or incorrect usage of voltage transformers.
Need help?
Do you have a question about the PCI-8366+ and is the answer not in the manual?
Questions and answers