background image

Parker Hannifin 

The "arc direction" bit in header code 1 indicates the direction of 

the arc relative to the primary and secondary axes. A counter-
clockwise arc is defined as an arc from the positive primary axis 

toward the positive secondary axis. 
The radius of the arc will be equal to the distance between the arc 
target position and the given center point. If the arc target position 

is equal to the target position of the previous move, a 360-degree 

path will be generated. The target position of the previous move 
must lie on the defined arc or the axes will jump to that location 

before the arc begins. 
If the "incremental center" bit in header code 3 is set, the center 
points are relative to the current target positions of the slaves, 

otherwise the center points are absolute. The "floating point data" 

bit in header code 3 indicates that the given center points are in 
IEEE floating point format, otherwise they are long integers. 

NURB or SPLINE Moves 

When the "NURB or Spline" bit in header code 3 (Bit 6) is set, the 

move data packet includes NURB or Spline curve data. In addition, 

bit 5 and 6 in header code 1 will differentiate if the data is NURB or 
Spline. Bit 5 of header code 1 is set when Spline data includes Knots. 
The control points for NURB and Spline are sent as DATA3 thru 

DATA10, similar to the way the normal slave targets are sent. Load 
the Knot in DATA13 and Weight in DATA14 and set the Bit 3 of code 

3. 

Binary SET and CLR 

The immediate setting and clearing of bits can be accomplished 
with a 3-byte binary command sequence. This sequence is a 1-byte 

command header followed by a two-byte index value. The index 

value is sent low order byte first. The command is not queued and 
the set or clear occurs when the command is first seen by the board. 

Binary SET 

Data Type 

Description 

Byte 0 

Header ID ( 0x1C ) 

Byte 1 

Index Byte 0 

Byte 2 

Index Byte 1 

Byte 3 

0x00, this byte is for 
ACR8020 DPCB only. 

120   Programmer’s Guide 

Содержание ACR Series

Страница 1: ......

Страница 2: ...arising from or in any way connected with the use of the equipment or this guide 2003 2007 Parker Hannifin Corporation All Rights Reserved Technical Assistance Contact your local automation technolog...

Страница 3: ...r Basic Categories of Motion 48 Move Types 49 What are Motion Profiles 53 Interaction Between Motion Profilers 54 Velocity Profile Commands 58 Coordinated Moves Profiler 63 Jog Profiler 66 Gear Profil...

Страница 4: ...tion Binary Global Parameter Access 125 Additional Features 127 CANopen 127 Drive Talk 141 Inverse Kinematics 147 Troubleshooting 149 Problem Isolation 149 Information Collection 149 Troubleshooting T...

Страница 5: ...on Topic Description Programming Basics Kill All Motion Request vs Kill All Moves Added new section which describes and compares the Kill All Motion axis flag and the Kill All Moves master flag Applic...

Страница 6: ...ized the Making Motion chapter Added REN and RES details for Velocity Profile Commands section Changed the term in section titles from Commanding Motion to Move Types Jog Profiler Added Jog Profiler s...

Страница 7: ...the program in which they are created This can cause problems if you have created similar local variables in different programs For example if long variables are dimensioned in three programs then the...

Страница 8: ...his is another comment ACC 10000 REM this comment follows a valid program statement Command Syntax The AcroBASIC programming language accommodates a wide range of needs by providing basic motion contr...

Страница 9: ...rguments for the command 4 Group The functional group to which the command belongs 5 Units Indicates the units of measurement required by the argument s in the command syntax 6 Data Type Indicates the...

Страница 10: ...lect commands use semicolons to control spacing and line feeds To understand the separator s specific use in a command refer to the command s format and description Slash mark signifies an incremental...

Страница 11: ...for axis y to 3 and 1 IPB X 0 05 Y 3 1 Notice that the two values for axis Y are given inside parentheses and separated by a comma as shown in the format of the command Example 4 HALT PROGx PLCx ALL...

Страница 12: ...uch as VEL 1000 To perform a command such as turning on the first of the digital outputs type SET 32 Adding Lines of Code to Programs You can add lines of code to a program that is already downloaded...

Страница 13: ...d as the first line in a program Listening to a Program While a program is running you can listen to it The listen mode displays data from the controller s print statements and error messages To enabl...

Страница 14: ...n Request KAMR is an Axis Flag The setting of this flag e g Bit Index 19 of the Quaternary Axis Flags will stop and prevent any motion jog cam gear coordinated master Motion for any other axes on the...

Страница 15: ...does not halt any programs or PLCs The KAMR flags may be cleared for all axes by issuing a CTRL Y Kill All Moves Kill All Moves is a Master Flag The setting of this flag e g Bit Index 10 of the Master...

Страница 16: ...flags Kill All Motion Request Quaternary Axis Flags Axis Number 0 1 2 3 4 5 6 7 8467 8499 8531 8563 8595 8627 8659 8691 Axis Number 8 9 10 11 12 13 14 15 8723 8755 8787 8819 8851 8883 8915 8947 Kill A...

Страница 17: ...LED as circled in red below indicates that the flag is set All motion is stopped for this axis and all other axes on the same master Select Master Flags in the first drop down menu Primary Master Fla...

Страница 18: ...ately You can send CTRL X to kill motion on all axes and terminate all program execution While CTRL X is similar to sending the HALT ALL command CTRL X also sets the Kill All Motion Request KAMR bit f...

Страница 19: ...ntrols the direction of program flow Think of it as a branch in your program When the conditions are met the program moves to a different block of code AcroBASIC provides the following conditional sta...

Страница 20: ...ot nest GOTO statements in IF ELSE statements The GOTO statement exits the IF ELSE statements and does not provide any link back inside Do not nest IF THEN statements in IF ELSE statements the logic m...

Страница 21: ...ndition you can omit the ELSE condition When the IF and ELSEIF conditions test false statement execution after the ENDIF continues Think of it as creating a series of IF THEN statements GOSUB The GOSU...

Страница 22: ...if the condition is always met then the loop does not end An endless loop is probably not a desired result so be mindful when writing the loop conditions AcroBASIC also provides the following looping...

Страница 23: ...condition is evaluated only at the beginning of the loop When using a WHILE WEND statement observe the following Do not nest GOTO statements in an WHILE WEND statement At the start of each loop throug...

Страница 24: ...e setpoint of a given parameter or a timeout is reached NOTE While intended to inhibit program execution based on an axis position you can use any system parameter or user defined parameter Example Th...

Страница 25: ...halting of programs Non Request Bits The bit requires clearing through a program or manually through a terminal Following is a list of the most commonly used parameter and bit tables Master Parameters...

Страница 26: ...shortcut in a terminal emulator NOTE When printing a system parameter the value returned is either an integer or a 32 bit floating point When printing a user parameter P0 P4095 the value returned is...

Страница 27: ...ou can pause the program by setting the Feedhold Request bit or sending the PAUSE command The Feedhold Request bit stops the axes using the deceleration value To set the Feedhold Request bit type SET...

Страница 28: ...ellaneous operators absolute value natural log square root etc require parentheses around their own expressions The order of operations with such operators begins with the deepest nested parentheses P...

Страница 29: ...strate some simple uses of expressions The examples assume memory space is allocated for the variables Example 1 The following causes axis X to move position to the resulting value of the expression X...

Страница 30: ...5 The following flashes the first 30 outputs in a random sequence PROGRAM DIM DV 1 REM dimension 1 floating point variable _LOOP2 DV0 RND 4294967295 REM set DV0 equal to random number P4097 DV0 REM se...

Страница 31: ...rol Program Flow Global Objects Servo Control Interpolation Setpoint Control Logic Function Transformation Memory Control Velocity Profile Warning ACR Series products are used to control electrical an...

Страница 32: ...LM Set jog limits MAXVEL Set velocity limits PM Position maintenance SLDEC Software limit deceleration SLIM Software limit enable SLM Software positive negative travel range TLM Set torque limits Char...

Страница 33: ...ch position with encoder RES Reset or preload encoder ROTARY Set rotary axis length Global Objects Command Description ADC Analog input control ADCX Expansion board analog input AXIS Direct axis acces...

Страница 34: ...ine interpolation mode TANG Tangential move mode TARC 3 D circular interpolation TRJ Start new trajectory Logic Function Command Description CLR Clear a bit flag DWL Delay for a given period IHPOS Inh...

Страница 35: ...ONFIG Hardware configuration CPU Display processor loading DEF Display the defined variable DEFINE Define variable DETACH Clear attachments DIAG Display system diagnostics ECHO Character echo control...

Страница 36: ...n a stored program STEP Step in block mode TROFF Turn off trace mode TRON Turn on trace mode Program Flow Command Description BREAK Exit a program loop END End of program execution ENDP End program wi...

Страница 37: ...feedforward velocity FLT Digital filter move IDELAY Set integral time out delay IGAIN Set integral gain ILIMIT Set integral anti windup limit KVF PV loop feedforward gain KVI PV loop integral gain KVP...

Страница 38: ...ation ramp F Set velocity in units minute FOV Set feedrate override FVEL Set final velocity IVEL Set initial velocity JRK Set jerk parameter S curve LOOK Lookahead mode MBUF Multiple move buffer mode...

Страница 39: ...etting the Controller When you reset the controller it shuts down communications turns off outputs and kills all programs For controllers with non volatile memory the controller stores all conditions...

Страница 40: ...series controller is powerful and flexible it requires configuration for your particular application There are two methods you can manually write the configuration code or use the Configuration Wizard...

Страница 41: ...rmance when jogging or homing The Jog Home Limits dialog is only for testing and does not write any jogging or homing code What is Configuration Code To get a sense of what configuration code looks li...

Страница 42: ...itly sets the ADC mode the ACR9000 is a 16 bit card and cannot operate otherwise The next section is specific to the ACR9000 and does not apply to other ACR Controllers Though the controller in this e...

Страница 43: ...0 ILIMIT 0 AXIS0 IDELAY 0 AXIS0 DGAIN 1e 005 AXIS0 DWIDTH 0 AXIS0 FFVEL 0 AXIS0 FFACC 0 AXIS0 TLM 10 AXIS0 FBVEL 0 The next section is specific to the ACR9000 and does not apply to other ACR controlle...

Страница 44: ...C 0 ENC2 MULT 4 REM Axis Gains values AXIS2 PGAIN 0 002441 AXIS2 IGAIN 0 AXIS2 ILIMIT 0 AXIS2 IDELAY 0 AXIS2 DGAIN 1e 005 AXIS2 DWIDTH 0 AXIS2 FFVEL 0 AXIS2 FFACC 0 AXIS2 TLM 10 AXIS2 FBVEL 0 REM Axis...

Страница 45: ...REM the desired master deceleration ramp DEC 10 REM the desired master stop ramp deceleration at end of move STP 10 REM the desired master velocity VEL 5 REM the desired acceleration versus time profi...

Страница 46: ...e resulting code exceeds the limit for a PLC program the Configuration Wizard splits it among several PLC programs The wizard uses the PLC5 8K file first and uses the PLC6 8k and PLC7 8k files as need...

Страница 47: ...on is killed and is used by the PLC program to set the Drive Disable output Bits 1976 1983 Drive Disabled Flag Axis 8 15 Triggered when a drive is faulted or optionally when motion is killed and is us...

Страница 48: ...tronic Gear Use the GEAR commands to control motion based on an external source such as an electronic gearbox trackball follower axis feed to length or changes of ratio related to position Cam Profile...

Страница 49: ...e written in a single statement such as X500 Y100 the motion is coordinated NOTE When commanding motion you must use the axis name the axis number is not a valid way to indicate an axis For more infor...

Страница 50: ...rom its current position X 20 Y 30 Example 2 The X axis makes an incremental move Y axis makes an absolute move and Z axis makes a decremental move Written on the same line this is a coordinated move...

Страница 51: ...s x 400 x200 x 50 x400 Combining Types of Motion The user can command multiple types of motion linear circular or sinusoidal in a single statement The controller coordinates the motion of all axes in...

Страница 52: ...nent change adjust the master velocity in the program code either manually or through the Configuration Wizard For more information about feedrate override see the FOV command in the ACR Command Langu...

Страница 53: ...p is only used when the stop ramp is zero Use the DEC ramp to blend moves Stop Use the STP Set Stop Ramp command to set the master deceleration ramp used at the end of the next move The value is in un...

Страница 54: ...line encoder attached to a motor The MULT Set Encoder Multipliers command brings the value to 4000 Then PPU X4000 sets the programming units to revolutions 4000 pulses rev for the rest of the program...

Страница 55: ...r each diamond the code in this example provides the coordinates for one diamond and uses the Jog Profiler to offset the coordinates for the remaining diamonds The axes are attached to a Coordinated M...

Страница 56: ...ABS Y0 X 2 Y1 X0 Y2 X2 Y1 X0 Y0 So what is happening Each motion profiler calculates its own commanded position which is sent to a summation point The coordinated move jog gear and cam data is combin...

Страница 57: ...ing point again this time changing the X axis to 5 The Y axis has not been jogged so it stays at its previous value of 3 For the fourth shape the jog statement adjusts the starting point for the Y axi...

Страница 58: ...file For more information about each command see the ACR Command Language Reference F Set Velocity in Units per Minute sets a move velocity in units minute The F command otherwise functions the same a...

Страница 59: ...ctor calculation Axis A makes its move within the defined motion profile but is not part of the calculation itself VECTOR Set Manual Vector sets an independent vector value for an axis removed from th...

Страница 60: ...anged to a value inappropriate to the application Carefully consider the effects throughout the application before applying a new value and perform a test without the load or mechanics attached REN Ma...

Страница 61: ...econdary Setpoint This action removes the following error In the example in Figure 2 the actual position is 11 That number is copied into the register for the Secondary Setpoint and the Primary Setpoi...

Страница 62: ...diagram of the profiler and summation registers for the command RES X10 The values of the Coordinated Moves Profiler Primary and Secondary Setpoints and Actual Position registers have been changed to...

Страница 63: ...it is working with is provided to the Coordinated Moves Profiler by the master slave and axis attachment statements The other motion profilers look to the Coordinated Moves Profiler for the configurat...

Страница 64: ...the same master and the program moves one axis to an absolute position axis X to 25 millimeters As only axis X is commanded to move axis Y is not included in the motion trajectory calculation ACC 750...

Страница 65: ...Parker Hannifin Making Motion 65...

Страница 66: ...es motion based on axis target positions and on the motion profile values JOG ACC JOG DEC JOG JRK and JOG VEL The motion profile is scaled by the PPU pulses per programming unit for each axis All axes...

Страница 67: ...ontal line once the axis is up to speed The area under the velocity profile graph is the distance traveled Figure 4 X Axis Velocity and Position Profiles In the lower graph position motion profile of...

Страница 68: ...s Velocity and Position Profiles Again the straight line between points P1 and P2 on the position motion profile is where the Y axis movement is a constant velocity Figure 6 shows the velocity motion...

Страница 69: ...higher acceleration value presents as a more gradual curve JOG ACC X1000 Y500 Figure 7 X and Y Position Motion Profiles Example 2 The JOG VEL value is changed while a single axis is in motion on the f...

Страница 70: ...s The program waits until the Jog Active Bit Bit792 is off indicating that Axis X has finished its move after which time the Y axis is commanded to move to its incremental position Figure 9 shows the...

Страница 71: ...Parker Hannifin JOG VEL Details Figure 10 shows the bit profiles for the Jog Flags Bits 792 through 796 as a JOG VEL command is executed Figure 10 JOG VEL Command and Bit Profiles Making Motion 71...

Страница 72: ...homing operation makes the final approach JOG INC Jog an Incremental Distance uses the current jog settings to jog an axis an incremental distance from the current jog offset JOG JRK Set Jog Jerk S c...

Страница 73: ...X It can also be used to preload a position into the Coordinated Moves Profiler adjusting the Jog Profiler to make up the difference example JOG REN X2 In either case the Gear and Cam profilers and th...

Страница 74: ...Parker Hannifin The drawing in Figure 12 illustrates JOG REN as it preloads the Coordinated Moves Profiler Figure 12 JOG REN Preloads the Coordinated Moves Profiler JOG REN X2 74 Programmer s Guide...

Страница 75: ...ler example JOG RES X It can also preload the Jog Profiler offset and again adjusts the Coordinated Moves Profiler to make up the difference example JOG RES X2 In either case the Gear and Cam profiler...

Страница 76: ...put to some form of input see SRC command Set External Timebase for available sources The input source is usually external such as an electronic gearbox trackball follower axis or changes of ratio rel...

Страница 77: ...shift that may have been built up by an incremental cam Homing The homing operation is a sequence of moves that position an axis using the Home Limit inputs The goal of the homing operation is to retu...

Страница 78: ...ing direction is the same as the selected final direction the profile is complete Otherwise find the edge again in the selected final direction using the velocity set with the JOG HOMVF command Exampl...

Страница 79: ...F ENDP Homing Subroutines Typically the homing code is a subroutine in a program The Jog commands define the motion JOG ACC JOG DEC JOG HOME JOG HOMVF JOG JRK and JOG VEL and three bits in the Quinary...

Страница 80: ...Figure A Homing Profile Attributes JOG HOME X1 Home Backup Enable bit index 24 is clear Home Negative Edge Select bit index 25 is clear Home Negative Final Direction bit index 26 is clear Figure B Hom...

Страница 81: ...ed and the move continues until the positive edge is detected At this time the move is decelerated at the JOG DEC and JOG JRK command values 4 After stopping the direction is reversed and a second mov...

Страница 82: ...clear Figure E Homing Profile Attributes JOG HOME X1 Home Backup Enable bit index 24 is set Home Negative Edge Select bit index 25 is clear Home Negative Final Direction bit index 26 is set Figure F H...

Страница 83: ...up Enable bit is set Figure G Homing Profile Attributes JOG HOME X 1 Home Backup Enable bit index 24 is set Home Negative Edge Select bit index 25 is set Home Negative Final Direction bit index 26 is...

Страница 84: ...me Negative Edge Select bit index 25 is set Home Negative Final Direction bit index 26 is clear Figure J Homing Profile Attributes JOG HOME X 1 Home Backup Enable bit index 24 is set Home Negative Edg...

Страница 85: ...inputs are used for positive and negative hardware limits and the input used for homing The inputs can be assigned or changed using the HLBIT command no corresponding parameter exists Use the HLBIT c...

Страница 86: ...reate imaginary limit and home inputs This is because the controller assumes all three inputs are in the same multiple of 32 bits The assignment of inputs does not roll over to the next block of 32 bi...

Страница 87: ...ofiler respectively Backlash Generator Used to compensate for error introduced by hysteresis in mechanical gearboxes Backlash is used in the Secondary Setpoint summation if the Primary Setpoint value...

Страница 88: ...output In the Project Workspace click Status Panel then click Servo Loop Status Following Error The Secondary Setpoint is compared with the value of the Actual Position received from a feedback devic...

Страница 89: ...Parker Hannifin Servo Loop Fundamentals 89 Figure 17 Following Error...

Страница 90: ...ine for combination of absolute and incremental moves GOSUB JogABSMotion REM subroutine for absolute jog moves GOSUB JogINCMotion REM subroutine for incremental jog moves GOSUB JogCOMBOMotion REM subr...

Страница 91: ...E OF both Absolute and Incremental Moves _JogCOMBOMotion JOG INC X 400 INH 792 JOG ABS X 200 INH 792 JOG INC X50 INH 792 JOG ABS X0 INH 792 RETURN ENDP Enable Drive PROGRAM GOSUB ENABLEDRIVE REM GO TO...

Страница 92: ...TO START WEND IF BIT 16649 THEN PRINT EPL NETWORK OPERATIONAL REM IF NETwoRK OPERATIONAL PRINT MESSAGE TO SCREEN IF THE NETWORK IS NOT OPERATIONAL AT THIS POINT THEN TRY TO RESET IT IF NETWORK IS NOT...

Страница 93: ...16166 AND NOT BIT 16167 WEND Prints Information regarding Y Axis homing IF BIT 16166 THEN PRINT Y HOMING SUCCESSFUL SET 128 IF BIT 16167 THEN PRINT Y HOMING UNSUCCESSFUL Checks if X Axis homing succe...

Страница 94: ...for homing JOG DEC Z100 REM set jog decel for homing JOG VEL Z25 REM set jog velocity for homing JOG HOMVF Z5 REM set jog final velocity for homing REM X Axis settings SET 16152 REM Backup to edge is...

Страница 95: ...rew is 5mm per motor rev so command a move REM of 5 5 to ensure 1 rev MSEEK Z 5 5 0 REM Rising First Marker Z Mark ENC2 REM Hardware Capture Parameter P12804 REM Capture Complete Flag BIT841 REM all p...

Страница 96: ...NT I would like to have a Infinite WHILE loop if they do not enter anything WHILE V0 V0 UCASE INKEY 1 REM Stores Keyboard entry into String Variable 0 WEND IF V0 A THEN PRINT n Apple REM If A was ente...

Страница 97: ...rrect IF LV1 0 PRINT ENTERED VALUE IS NOT VALID V0 PRINT Value must be a number greater than 0 GOTO InputPoints ENDIF DIM DA0 LV1 REM dimension array equal to number of points to teach use input 24 to...

Страница 98: ...ifin FOR TO STEP NEXT loop to make absolute moves to position taught FOR LV0 0 TO LV1 1 STEP 1 X DA0 LV0 INH 516 PRINT DA0 LV0 REM Print to terminal the Position it move to NEXT RETURN ENDP 98 Program...

Страница 99: ...lt for the COM1 and COM2 channels is one Note that high bit stripping cannot be done without also activating the control character prefixing mode Mode Description MODE 0 No Conversion MODE 1 Control C...

Страница 100: ...racter is ANDed with 0x7F and proceeded with the character Note that the AND may result in a control code which must then handled by control character prefixing The original character may also need to...

Страница 101: ...solation Mask Group Code and Index The group code and group index work as a pair to select the data coming back in a data packet The group code selects a general data grouping and the group index sele...

Страница 102: ...e to do asynchronous sampling A request can be sent by one part of the program and packet retrieval can be done by a centralized receiver This routine would recognize the 0x00 in the header as an inco...

Страница 103: ...ethod of reading from and writing to single system parameters on the card Unlike binary data packets binary parameter access uses the index of the parameter directly from Appendix A There are no group...

Страница 104: ...Data Field Data Type Description Byte 0 BYTE Header ID 0x00 Byte 1 BYTE Packet ID 0x88 Byte 2 3 WORD Parameter Index Receive Packet Data Field Data Type Description Byte 0 BYTE Header ID 0x00 Byte 1 B...

Страница 105: ...r Index Receive Packet Data Field Data Type Description Byte 0 BYTE Header ID 0x00 Byte 1 BYTE Packet ID 0x8A Byte 2 3 WORD Parameter Index Byte 4 7 IEEE32 Parameter Value Binary Set IEEE This packet...

Страница 106: ...ails The command returns the header and peek address followed by the requested data Binary Peek Packet Transmit Packet Data Field Description Byte 0 Header ID 0x00 Byte 1 Packet ID 0x90 Byte 2 Convers...

Страница 107: ...mand A binary poke command consists of a four byte header followed by an address and the data to be stored at that address There is no information returned from this command The header contains a data...

Страница 108: ...s Command A binary address command consists of a four byte header containing a program number and a parameter code The command returns the header followed by the base address of the parameter type in...

Страница 109: ...ables 0x01 DA Double Arrays 0x02 SV Single Variables 0x03 SA Single Arrays 0x04 LV Long Variables 0x05 LA Long Arrays 0x06 V String Variables 0x07 A String Arrays Usage Example NOTE Addresses shown ar...

Страница 110: ...yte 1 BYTE Packet ID 0x93 Byte 2 3 WORD Parameter Index Receive Packet Data Field Data Type Description Byte 0 BYTE Header ID 0x00 Byte 1 BYTE Packet ID 0x93 Byte 2 3 WORD Parameter Index Long 0 LONG...

Страница 111: ...BYTE Reserved 0x00 Byte 3 BYTE Reserved 0x00 Long 0 BYTE Data Address Long 1 BYTE NAND Mask Long 2 BYTE OR Mask Receive Packet None Usage Example NOTE Addresses shown are for example only Addresses wi...

Страница 112: ...odified as follows data data AND NOT nandmask OR ormask Binary Mask Packet Transmit Packet Data Field Data Type Description Byte 0 BYTE Header ID 0x00 Byte 1 BYTE Packet ID 0x95 Byte 2 3 WORD Paramete...

Страница 113: ...control point Data 06 LONG Slave 3 Target or NURB Spline control point Data 07 LONG Slave 4 Target or NURB Spline control point Data 08 LONG Slave 5 Target or NURB Spline control point Data 09 LONG Sl...

Страница 114: ...Count down if set else up Bit 7 Counter Mode Master move counter enable The enabled mode for this flag Secondary Master Flag Bit Index 5 Set uses the following Header Code 0 definition This Header Co...

Страница 115: ...3 Slave 3 Present Bit 4 Slave 4 Present Bit 5 Slave 5 Present Bit 6 Slave 6 Present Bit 7 Slave 7 Present Slave target positions to be contained in this move packet Header Code 3 Data Field Data Type...

Страница 116: ...Field Data Type Description Bit 0 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Reserved Reserved Header Code 6 Data Field Data Type Description Bit 0 Slave 8 Present Bit 1 Slave 9 Present Bit 2 Slave 10...

Страница 117: ...es flag set Move Modes Bits 0 and 2 in Header Code 0 indicate which type of move mode is contained in the binary move packet as follows Bit 1 Header Code 0 Bit 0 Bit 0 Header Code 0 Bit 2 Move Mode 0...

Страница 118: ...Parker Hannifin Example 2 The following illustrates Move Mode 1 Feed Cornering Example 3 The following illustrates Move Mode 2 Feed Stopping 118 Programmer s Guide...

Страница 119: ...oint format otherwise they are long integers Arc Moves When the arc mode bit in header code 1 is set a circular arc is generated using two of the first three slaves attached to a master Any slaves tha...

Страница 120: ...s are in IEEE floating point format otherwise they are long integers NURB or SPLINE Moves When the NURB or Spline bit in header code 3 Bit 6 is set the move data packet includes NURB or Spline curve d...

Страница 121: ...the FOV occurs when the command is first seen by the board The second byte in the header is a bit mask that determines which masters are affected by the FOV value that follows The FOV value is an imag...

Страница 122: ...ffected Bit 1 Master 1 Affected Bit 2 Master 2 Affected Bit 3 Master 3 Affected Bit 4 Master 4 Affected Bit 5 Master 5 Affected Bit 6 Master 6 Affected Bit 7 Master 7 Affected NOTE Masters affected by...

Страница 123: ...ued and the ROV occurs when the command is first seen by the board The second byte in the header is a bit mask that determines which masters are affected by the ROV value that follows The ROV value is...

Страница 124: ...ffected Bit 1 Master 1 Affected Bit 2 Master 2 Affected Bit 3 Master 3 Affected Bit 4 Master 4 Affected Bit 5 Master 5 Affected Bit 6 Master 6 Affected Bit 7 Master 7 Affected NOTE Masters affected by...

Страница 125: ...nd Poke Command interface System Pointer Address hardware dependent Controller System Pointer Address ACR1200 0x400008 ACR1500 0xC08008 ACR2000 0x400008 ACR8000 0x403E08 ACR8010 0x403E08 ACR8020 0x400...

Страница 126: ...see the DIM command If the returned address is other than zero peek at this address to receive the number of dimensioned global variables To prevent corruption of user memory always verify P index is...

Страница 127: ...d and implemented each time the network is started via bit 11265 Values of P32771 less than or equal to zero do not result in any re mapping so CANopen digital I O appears at the original location Val...

Страница 128: ...ommand Each parameter is described in further detail in subsequent paragraphs Parameter P number Default value Master Node Id P32768 5 Bit Rate kilobits second P32769 125 Number of slave nodes P32770...

Страница 129: ...lus one to report health The ACR9000 also sends a sync message In the formulas below digital inputs are ignored since these will not transmit periodically Node messages node analog inputs 3 4 node dig...

Страница 130: ...ates and configures the slaves as required The slaves are then placed into the Operational state and automatic transfer between the slave s physical I O and the ACR9000 s I O parameters and bits takes...

Страница 131: ...lag as an argument This also applies to using parameters with analog I O To be consistent with the current language extend all existing on board I O functionality to external I O and facilitate backwa...

Страница 132: ...etwork Operational R This flag is set when the CANopen network is in the Operational state and communicating It is cleared if there is no communication or some other error Check the below flags for mo...

Страница 133: ...2777 Number of analog outputs P32778 Bus state see table below P32779 Reserved P32782 Reserved P32783 Field Description Read Write Description Master Node ID R W The controller s ID in the CANopen Net...

Страница 134: ...ates listed in that document can occur in the ACR9000 In addition the off and blinking red indications are unique to the ACR9000 not included and not conflicting with the states listed in CiA DR 303 3...

Страница 135: ...An expected external node has not responded to interrogation during attempt to start network Will occur if a stated node ID does not match the actual node ID or if the node is missing or at the wrong...

Страница 136: ...command that would allow the application to easily verify that the configuration is the same every time In the table below nodes are numbered 0 3 like all other ACR objects This is the node number fro...

Страница 137: ...ll have an information parameter block described later in this text This block will contain among other things the number of bytes of digital inputs and outputs Digital I O are assigned in blocks of e...

Страница 138: ...10 Alternatively if the input of the analog device were a maximum of 20ma then the gain would be 20 Internally the raw analog count value is normalized such that 1 0 represents full scale positive an...

Страница 139: ...nd ACR9000 does not have the type of ADCs that are assumed by other ADC commands Saved Parameters All the parameters required to set up the extended I O network are saved with the ESAVE command and au...

Страница 140: ...UTPUT 2 ON NODE 0 SET 13057 REM TURN ON DIGITAL OUTPUT 2 ON NODE 1 IF P33288 5 0 THEN P33792 2 5 REM IF ANALOG INPUT 1 FROM NODE 0 IS REM GREATER THAN 5 VDC THEN SET ANALOG REM OUTPUT 1 ON NODE 1 TO 2...

Страница 141: ...grams can use axis aliases and the controller manages the drive address prefixing Get existing drive configuration data and send new configuration data Get drive status data Set which error data the A...

Страница 142: ...s is best illustrated through an example For example you have a eight axis ACR controller and axes 0 1 4 and 7 are connected to drives with the Drive Talk feature The auto address sequence is as follo...

Страница 143: ...error data request set the Send ERRORL Request bit bit index 3 Drive Talk Drive Control Flags Drive Status Flags You can get status data of an Aries drive On power up the controller does not contain d...

Страница 144: ...s to which an Aries drive is connected Once set up you can do the following You can then get and send configuration data set the error log for the drive and get drive status data Example The following...

Страница 145: ...configuration data and get drive status data In pass through mode the controller acts as a communication conduit to the drive The following diagram helps illustrate the switch concept Because the pass...

Страница 146: ...1123 CLR11124 REM CLEAR ALL TIMEOUT BITS P00 SET11104 REM START AUTO ADDRESS P00 DTALK X REM START TALKING DIRECTLY TO THE DRIVE REM PRESS ESCAPE TO EXIT TPE 0 TPE 2576 TREV Aries OS Revision 2 00 DMO...

Страница 147: ...botic arm and an HMI The controller using algorithms developed by the application builder transforms the motion target points from Cartesian coordinates to rotational coordinates to position the arm j...

Страница 148: ...M Describe transformation in PROG7 P12617 cos P12360 REM Describe transformation in PROG7 ENDP PROG0 ATTACH MASTER0 ATTACH SLAVE0 AXIS0 X ATTACH SLAVE1 AXIS1 Y PPU X 2000 Y 2000 REM Scale commands to...

Страница 149: ...blem is mechanical electrical or software related and note whether it can be recreated or is repeatable Random events may appear to be related but they are not necessarily contributing factors to the...

Страница 150: ...power source meets requirements outlined in Chapter 2 Specifications of the ACR9000 Hardware Installation Guide Power status LED is steady red There is inadequate power to the controller 1 Verify the...

Страница 151: ...t node will have a node state of 0 dead One possible reason would be node received overrun caused by a cyclic period that is too fast for the node Another possible reason is the connection between the...

Страница 152: ...Ethernet card in the PC is functioning correctly Verify the ACR controller Ethernet port is functioning correctly Serial Communication Incorrect cable Check that the serial cable is a null modem seri...

Страница 153: ...he ACR1505 or ACR8020 Check for compatible operating systems Communication Error 17080 ACR View cannot establish communication Check PCI communications Shut down computer and restart Operation Check i...

Страница 154: ...oop Verify that the drives are running open loop Status Panels Bit Status Axis Flags Primary Axis Flags Each axis is indicated by Bit Open Servo Loop Disable drive and clear the appropriate Bit Tuning...

Страница 155: ...iated Slave Kill All Motion Request Bits Axis Kill All Motion Request is active Verify Status Panels Bit Status Axis Flags Quaternary Axis Flags Each axis is indicated by Bit ACR9000 Kill All Motion R...

Страница 156: ...ct ABS vs INC Incorrect commanded distance or position Incorrect PPU setting Correct PPU setting for position or distance Check the commanded velocity by going into the correct PROG level Type for exa...

Страница 157: ...axis is indicated by Bit Positive Negative EOT Limit Enable Check that the associated inputs toggled If using onboard I O Status Panels Bit Status Onboard I O and User Flags 0 3 If using Expansion I O...

Страница 158: ...used in any unused program from PROG1 to PROG7 When an Axis Kill All Motion Request is set this program clears related error conditions such as Software and Hardware End of Travel EOT flags because th...

Страница 159: ...15000 bytes to store and run REM program DEFINE XPosSoftEOT BIT16140 DEFINE XNegSoftEOT BIT16141 DEFINE YPosSoftEOT BIT16172 DEFINE YNegSoftEOT BIT16173 DEFINE XPosHardEOT BIT16132 DEFINE XNegHardEOT...

Страница 160: ...10 80 DIM LV10 REM initialize error codes to zero MEIErrorCode 0 CANopenErrorCode 0 XErrorCode 0 YErrorCode 0 REM clear PrintErrors to prevent forced printing of error messages SET PrintErrors REM cle...

Страница 161: ...ccurred V1 CANopen network problem occurred ENDIF ENDIF REM SOFTWARE EOT s REM Software End of Travels EOT s do not set the axis REM Kill All Motion Request KAMR flags so must be REM handled separatel...

Страница 162: ...XKillAllMotion AND NOT LatchedMEIOpen INH 792 REM When KAMR flag is set all motion stops with REM JOG move SET ErrorOccurred XErrorCode 0 REM Error number for axis 0 REM some master programs can be re...

Страница 163: ...ELSE V2 Other fault user set KAMR bit EPL Network Fault etc ENDIF XErrorCode 7 REM no separate code for drive fault ENDIF REM Clear KILL bits CLR XKillAllMotion REM BIT8467 CLR KillMasterMoves REM BIT...

Страница 164: ...ignal Lost or Fault IF NOT YDriveEnabled AND YErrorCode 0 AND YEncoderFault OR YEncoderLost YErrorCode 6 V3 Axis 1 disabled due to encoder fault ENC 1 RES REM try to reset encoder ENDIF REM if none of...

Страница 165: ...to have REM program clear codes automatically XErrorCode 0 YErrorCode 0 ENDIF CLR ErrorOccurred ENDIF GOTO LoopStart _CheckTime REM This implements a clock for showing time since power up or REM rebo...

Страница 166: ...xcMinutes 60 REM remove any hours less than a full day ExcHours hours mod 24 REM only full days are left Only works up to 25 days REM remove excess hours and convert what s left to days days hours Exc...

Страница 167: ...R9000 controller s performance A closed network restricts the flow of traffic to only the controller and related devices The IP address and subnet mask you assign each controller determines to which s...

Страница 168: ...And class C networks provide a huge number of network IDs but a small number of host IDs Before a computer or router can send data it has to identify the network ID through the address class Each cla...

Страница 169: ...http www faqs org rfcs rfc1918 html Subnets As networks increase in size it becomes more complex to deliver information Subnets provide a logical way to break apart network addresses into smaller mor...

Страница 170: ...same network ID 192 168 but are divided into two subnets Three computers use 192 168 10 where 10 is the subnet ID the remaining three use 192 168 5 where 5 is the subnet ID Subnet Masks A subnet mask...

Страница 171: ...ID appear use 255 in the subnet mask Suppose on network 172 20 0 0 class B you have to set up a new computer You assign it 172 20 44 180 as the IP address As a class B network the first two octets are...

Страница 172: ...ER4 ATTACH AXIS5 STEPPER5 STEPPER5 ATTACH AXIS6 STEPPER6 STEPPER6 ATTACH AXIS7 STEPPER7 STEPPER7 ESAVE Example 2 The following example configures an eight axis ACR8000 ACR8010 board for four closed lo...

Страница 173: ...axis ACR1200 with two on board stepper outputs or a four axis ACR2000 with one stepper output module for four open loop steppers Also included on the board is an analog input module ADC input module N...

Страница 174: ...for one closed loop servo and one open loop stepper Also included on the board is an analog input module ADC input module NOTE On the ACR1200 card the attach axis statements for AXIS2 through AXIS7 m...

Страница 175: ...7 cycling power 39 dedicated I O homing 85 Drive Talk auto address 142 bits 141 configuration flags 142 drive status flags 143 error flags 143 parameters 141 pass through mode 145 RS 232 141 RS 485 14...

Страница 176: ...ranching repetition 22 selection 19 halting 13 labels 7 listening 13 pausing 14 resuming 14 running 13 starting 13 starting automatically 13 start up 39 program flow pause 24 repetition 22 selection 1...

Отзывы: