background image

UD70
Issue code:   70nu2

DPL programming

4-3

4.3 Variables

Basic variables

There are two basic types of variable, as follows:

• 

Integer variable (

INT

)

• 

Floating-point variable (

FLOAT

)

Integer
variables

Integer variables are denoted by placing a % 

% symbol after the name of the

variable, and are internally represented by a two’s complement
32-bit number.   This gives a decimal range of 

±

2147483647.

Floating-
point
variables

Floating-point variables have no symbol.   These variables are
IEEE double-precision (64-bit) numbers which give a range of approximately

±

1.7976 x 10

±

308

.

Accessing the variables

All variables are global within a program (ie. they can be accessed and
altered by any task).   (There are no local variables.)

Bit-addressing of variables

All integer variables and arrays (see below) may be bit-addressed. This
means that each individual binary bit in the variable may be separately read
or written to.  Bit-addressing is achieved by appending .n

.n to the end of the

variable name, where n

n is the bit number to be accessed.

Example

flags%.3 = 1

;set bit 3 to 1

IF flags%.5 = 1 THEN ...

;check bit 5

Naming conventions

The first character of a variable must be a letter.   Subsequent characters
may include letters, numbers and the underscore (

_

) character.   These may

be in any order.

Variable names are case sensitive (eg.   the variable name speed%

speed% is not the

same as SPEED%

SPEED%).

Preferred use of variables

It is recommended that integer variables are used where possible.  
Operations on integer variables perform much faster than for
floating-point variables.

Содержание UD70

Страница 1: ...Part Number 0447 0017 Issue Number 2 User Guide UD70 UD70 Large Option Module and software for Unidrive...

Страница 2: ...motor or its driven equipment and to prevent potential damage to equipment users and operators all necessary precautions must be taken if operating the Drive in this mode The Stop and Start inputs of...

Страница 3: ...tem 2 2 3 Getting Started 3 1 3 1 Introduction 3 1 3 2 Example DPL program 3 1 3 3 Creating a DPL file using the DPL Toolkit 3 4 4 DPL Programming 4 1 4 1 Program headers 4 1 4 2 Comments 4 2 4 3 Vari...

Страница 4: ...wnloading a program 5 11 5 7 Running a program 5 12 5 8 Program monitoring and debugging facilities 5 12 6 Serial Communications 6 1 6 1 Introduction 6 1 6 2 Hardware connections 6 2 6 3 ANSI communic...

Страница 5: ...8 11 Reference Switching 8 30 8 12 Timer Counter unit 8 32 8 13 Digital I O ports 8 36 8 14 Non volatile memory storage 8 37 8 15 Using the RS232 port for Drive to Drive communications 8 37 9 Diagnos...

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

Страница 7: ...ogrammer to write software or use pre written software in order to enhance the flexibility of a Unidrive DPL Toolkit Windows interface The DPL Toolkit is contained on two diskettes It is a program whi...

Страница 8: ...PLsource code This allows the site engineer toread the programstored inthe UD70 evenifthe programis not onthe host PC This option can be disabled ifit is not required 1 3 PC requirements The minimum m...

Страница 9: ...ction of the Drive does not remove dangerous voltages from the Drive or the driven machine AC supplies to the Drive must be disconnected at least 15 minutes before any cover is removed or servicing wo...

Страница 10: ...re no static charge has built up when the plug is inserted 2 Using a maximum cable length of not more than 3 metres 10 feet connect an RS232 cable to the RS232 serial port on the UD70 and to the commu...

Страница 11: ...erial port of the host PC is not COM1 open the Projects Projects menu and select Configure Configure In the drop down menu that appears select Comport Comport This opens a further drop down menu which...

Страница 12: ...stem files are located in directory MD29GUI BIN SYS 7 Select the correct path for the required system files Double click on the SYS file specified in the following table Drive File UD70 UD70OS SYS UD7...

Страница 13: ...UD70 Issue code 70nu2 Installation 2 5 8 Click on green light showing The system file is now loaded into the UD70...

Страница 14: ...UD70 Issue code 70nu2 2 6 Installation...

Страница 15: ...followed by explanations of the program instructions Note that parameter numbers are denoted in this User Guide and in DPL programs by eg parameter 1 21 is denoted as 1 21 3 2 Example DPL program The...

Страница 16: ...1 0 Is 1 21 1000 1 21 1 21 1 Yes No Flow diagram of program Sawtooth Program instructions TITLE Sawtooth VERSION 1 1 1 DRIVE Unidrive AUTHOR MyName COMPANY MyCo Note This is a comment BACKGROUND Top 1...

Страница 17: ...ment lines which can be placed anywhere in a program Comments are always preceded by either a double forward slash or a semi colon Comments are useful for inserting descriptions or for giving explanat...

Страница 18: ...O WHILE and LOOP stop being repeated and the program goes to the next line after the LOOP command GOTO Top GOTO is a flow control instruction In this case it tells the program to go to the label Top T...

Страница 19: ...LE 1 21 1000 1 21 1 21 1 LOOP GOTO Top 3 Open the File File menu and select Save As Save As The Save File As Save File As dialog box appears 4 In the Folders Folders list select the Projects Projects...

Страница 20: ...back to the PC at a later date if the computer copy becomes lost for example If the DPL source file is not to be downloaded ensure the check box is unchecked When the Compile Compile dialog box next...

Страница 21: ...buttons on the lower toolbar appear shaded it is an indication that communications could not be established with the UD70 Check that AC power is applied to the Drive and that the serial communications...

Страница 22: ...Warning The Sawtooth program rapidly alters the speed reference parameter of the Drive For safety ensure the Drive is disabled before running the program In the Task Manager toolbar click on The Spee...

Страница 23: ...program header must be contained on a single instruction line in the program Program title Syntax TITLE Program title The TITLE Program Program title title is for use by the programmer eg TITLE Sawtoo...

Страница 24: ...mmer Maximum length 64 characters Company name Syntax COMPANY Company name The COMPANY Company name is for use by the programmer Maximum length 64 characters Example program headers TITLE Sawtooth VER...

Страница 25: ...ny task There are no local variables Bit addressing of variables All integer variables and arrays see below may be bit addressed This means that each individual binary bit in the variable may be separ...

Страница 26: ...Floating point array having 30 elements The elements in an array are numbered as follows 0 to Number of elements 1 From the example of an integer array given above the first element of myarray myarray...

Страница 27: ...5 07 05 and p18 01 p18 01 is accessed by entering 18 01 18 01 Leading zeroes in the parameter can be omitted eg 7 5 7 5 is the same as 07 05 07 05 Parameters can also be accessed indirectly using an i...

Страница 28: ...erts all other bits to zero Example 100100 0 binary is converted to 000001 1 binary value bit field size Bit field invert This Operator inverts the specified number of least significant bits and conve...

Страница 29: ...ask is specified by its name in the program The contents of each task must be placed in braces Example CLOCK instructions INITIAL task The INITIAL task is used typically to initialize program variable...

Страница 30: ...g This task would be used for the following Data logging Checking digital inputs Setting output status The BACKGROUND task runs after the INITIAL task is completed It is recommended that the majority...

Страница 31: ...KGROUND Task giving way to the CLOCK Task INITIAL Task CLOCK Task BACKGROUND Task CLOCK Task timing period BACKGROUND Task giving way to the CLOCK Task and the CLOCK Task giving way to the ENCODER Tas...

Страница 32: ...ing time for the BACKGROUND task to run until interrupted by the next ENCODER task 7 When the ENCODER task has finished the next CLOCK period has not arrived The BACKGROUND task runs until interrupted...

Страница 33: ...n occur because the CLOCK task will also run the sub routine but will apply its own values CLOCK task The CLOCK task is used for time related monitoring of the Drive and commands to the Drive eg contr...

Страница 34: ...g frequency ENCODER task timebase kHz ms Unidrive 3 6 or 12 5 52 Unidrive 4 5 or 9 7 36 Example ENCODER new_master_pos 90 1 new_slave_pos 90 3 master_pos_change new_master_pos old_master_pos slave_pos...

Страница 35: ...or example an error signifying a serial communications loss could occur if incoming data from an I O Box is lost due to the cable being broken Normally the UD70 halts all tasks and optionally trips th...

Страница 36: ...forms an operation according to a set condition eg IF Condition True Yes False No Procedure 1 Procedure 2 Example of an IF THEN flow diagram Example of an IF THEN flow diagram Loop instructions A loop...

Страница 37: ...unctions can be used only in the SPEED CLOCK or ENCODER tasks eg FILTER Base conversion functions A Base conversion function acts upon a value to convert Binary Coded Decimal to Binary and vice versa...

Страница 38: ...ccuracy to be maintained throughout mathematical operations The output from an expression must then be corrected by a relevant dividing factor Example a 1500 a 1 5 b 2500 b 2 5 c a b c 3750000 Divide...

Страница 39: ...nce PRINT instruction Do not over use the PRINT instruction See PRINT instruction in Chapter 7 Reference It is preferable to use the Watch Watch window in the DPL Toolkit to monitor variables see Chap...

Страница 40: ...mal point is ignored For example parameter 4 08 in the Unidrive is in units of 0 1 A value of 2 3 must be written as 23 4 10 Defining aliases constants Sometimes it is useful to assign a meaningful na...

Страница 41: ...characters Spaces are not permissible Value parameter The value parameter can be used to specify any constant value or parameter number Example This example demonstrates use of the DEFINE directive to...

Страница 42: ...UD70 Issue code 70nu2 4 20 DPL programming...

Страница 43: ...ion tools enable the user to perform the following Develop and edit real time programs for the UD70 Cut and copy program text to the Windows clipboard Paste program text from the Windows clipboard Loa...

Страница 44: ...These are given below File menu The File File menu is as follows Creating a new file In the File File menu select New New or click on A blank page is created for you to start work on Opening an exist...

Страница 45: ...menu for easy access When the Add to Add to option is selected the following list appears This list refers to two of the main menu items Favourite Favourite and Cue Cue Cards Cards in the Toolkit Whe...

Страница 46: ...opying in one operation Opening File Viewer Do either of the following Click on File Viewer File Viewer In the File menu select View Current File or View Last File When View Current View Current File...

Страница 47: ...ewer Using File Viewer 1 Save the sub routine as a file See Chapter 4 DPL Programming 2 Place the cursor in the open program where the text is to be inserted 3 Open File Viewer In the box at the botto...

Страница 48: ...plications The tools allow you to cut copy paste clear and undo Cutting a line Select Cut Cut Line Line to delete highlighted instruction lines Finding and replacing text Select Find Replace Find Repl...

Страница 49: ...s are useful for negotiating long programs A BookMark is inserted into a program where the writer needs to refer to a location on a regular basis A number of BookMarks may be used in a single program...

Страница 50: ...including TrueType fonts Auto indent AutoIndent AutoIndent allows you to set a tab for DO WHILE LOOP and IF ENDIF commands When the Enter Enter key is pressed at the end of the line the indent is aut...

Страница 51: ...gging tools are automatic and check for programming errors Others allow the programmer to check the program line by line to verify the logic of the program Compiling a program 1 Save the written progr...

Страница 52: ...program is also highlighted Using Build Errors 1 Click on the first line that is shown as an error 2 Correct the error the type of error is indicated in the Build Errors Build Errors window 3 Click on...

Страница 53: ...wnloaded only when it is free from errors errors Once the program file is downloaded to the UD70 the DPL program is ready to be run To download the file click on Down load Down load in the Task Manage...

Страница 54: ...a program can be monitored instruction by instruction During single stepping all other tasks may run at full speed Single stepping through a task 1 Click on the appropriate Task Manager button as foll...

Страница 55: ...e is started Note Only one breakpoint may be set in a task at any one time Breakpoints and single stepping are not possible in user sub routines Finding breakpoints in separate tasks 1 Click on Next b...

Страница 56: ...the program is running Values can be shown numerically and graphically The bottom section allows snap shot reading and writing of parameters and program variables Continuously monitoring a variable or...

Страница 57: ...em from one type to another eg uni polar bar to bi polar move the mouse cursor over the graphical display region and press the right mouse button In the pop up menu appears select the required option...

Страница 58: ...to the host PC when the original program file is not available or if the program that is running is not exactly known Use the following procedure to retrieve the DPL file 1 Click on Upload Upload in t...

Страница 59: ...s the user information about the program in the UD70 such as the program name date of compiling version number of the UD70 operating system etc To view this information click on System information Sys...

Страница 60: ...messages eg the starting and stopping of a program Watch window values useful for data logging The output of the DPL PRINT instruction see PRINT instruction in Chapter 7 Reference These functions are...

Страница 61: ...an be connected in a single group allowing up to four unit loads for the line repeater Up to 15 devices can be connected if four wire mode is used When line repeaters are used up to 81 Control Techniq...

Страница 62: ...st not be connected to any serial communications lines or to the serial communications 0V pin 1 Ground connection It is recommended that the shield of the data communications cable should be connected...

Страница 63: ...unit in the chain ie the unit farthest away from the host Care must be taken to ensure that other units in the system do not have the resistor already fitted Excessive signal loss will occur if termin...

Страница 64: ...at a fixed speed or baud rate in the form of a character A character may typically comprise seven or eight bits In order for a receiver to recognize valid data a frame is placed around each character...

Страница 65: ...eive a new message it is often sent at the start of a message so that all the devices are set at Ready to Ready to receive message receive message Control characters Commands and requests are sent in...

Страница 66: ...eature is that a message can be sent to all units of all groups simultaneously using the address 00 This address can be used to send a Start command to a group of Drives which are mechanically coupled...

Страница 67: ...n be only one of the following Space 32 dec X for hex hex is typically used to access I O Box data Block checksum BCC In order to ensure that the messages from or to the UD70 do not become corrupted d...

Страница 68: ...ues X X for hex values BCC Block checksum If a requested parameter does not exist the UD70 will reply with an EOT character ASCII 04 Example To read the speed set point of a Unidrive that is unit 2 of...

Страница 69: ...evious parameter Ctrl H This facility can be used to save time when monitoring a parameter over a period of time Writing to parameters To write data to a parameter Drive or virtual the message structu...

Страница 70: ...sent and accepted with either a ACK or NAK response subsequent write messages to that particular UD70 can use a re write message structure in which the address does not need to be re transmitted The r...

Страница 71: ...011 1 0011 0001 0000 0010 0010 1101 0010 1111 3 0011 0011 0001 1100 4 0011 0100 0010 1000 0010 1110 0000 0110 5 0011 0101 0011 0011 ETX 0000 0011 0011 0000 The final value is the BCC provided that its...

Страница 72: ...is received from the serial port and is scaled by the value of the scaling set up parameter before being placed in the destination parameter Mode 4 Cascade mode With this mode a defined parameter is t...

Страница 73: ...mode This mode turns off all internal protocols and allows the user to write and read directly from the ANSI RS485 port using the PUTCHAR and GETCHAR functions The communications data frame is organiz...

Страница 74: ...in Mode 2 UD70 operating in Mode 3 Source Scale 16000 Any parameter Serial link Destination Any parameter Scale xx xx Functions of Modes 2 and 3 Functions of Modes 2 and 3 Using Modes 6 7 8 and 9 In M...

Страница 75: ...and 14 The Modbus protocol is only supported as a slave Modes 13 and 14 do not allow the UD70 to act as a Modbus Master The baud rate is selected using parameter 17 07 6 5 ANSI instructions The follow...

Страница 76: ...valid reply PRINT Error in reading data from Unidrive GOTO top ENDIF send write command to CD using 1 decimal place result ANSIWRITE 12 SP reply 1 IF result 0 THEN PRINT Message could not be sent GOT...

Страница 77: ...t to be running when it is being run This is significant when other real time Tasks are to manipulate data which have initial values BACKGROUND task The BACKGROUND task is used for functions and comma...

Страница 78: ...the set up parameter see Set up Parameters in Chapter 10 Parameters which can range from 5ms to 200ms Example This example produces a sine wave CLOCK 1 21 SIN rad 1000 rad rad 0 01 IF rad 6 283185 TH...

Страница 79: ...M switching frequency ENCODER task timebase kHz ms 3 6 or 12 5 52 4 5 or 9 7 36 Example ENCODER master 90 2 slave 90 4 EPOS EPOS master slave EVENT task The EVENT task is a special task which runs whe...

Страница 80: ...e name for the sub routine is case sensitive If the CALL instruction in the preceding example is written as CALL ramp ramp the program will not be compiled since the word ramp ramp should be in upper...

Страница 81: ...output is 54 5 ANSIREAD Syntax result ANSIREAD drive address mnemonic This is a 4 wire RS485 port function which always returns an integer This function transmits a parameter read request via the ANSI...

Страница 82: ...a parameter write request to a remote Drive via the ANSI RS485 port The Drive address is an integer expression usually between 01 and 99 The mnemonic is a string which contains the parameter number T...

Страница 83: ...al processing function returns the running average of the input for the desired number of samples The number of samples must be a constant integer value The input expression is also an integer This fu...

Страница 84: ...inary integer to a binary coded decimal number It is used to operate on digital output data to the I O Box See BCD2BIN instruction for an explanation for converting decimal to binary coded decimal BCD...

Страница 85: ...Example 2 INITIAL CALL SETUP SETUP This is the name of the sub routine 1 21 0 Note It is not possible to single step through a user defined task The name of the sub routine is case sensitive COS Synt...

Страница 86: ...struction is used to specify an array of a set of variables of the same type integers or floating point The instruction does not produce any code but tells the compiler to reserve space for a dynamic...

Страница 87: ...conditional expression becomes false Syntax 2 Syntax 2 allows the instructions be executed first the conditional expression is evaluated This ensures that the instructions in the loop are executed at...

Страница 88: ...he output of a first order filter function with input expression as the input The time constant of the filter depends on the value specified and how often the FILTER instruction is executed Example CL...

Страница 89: ...port The returned value is 1 1 if no characters have been received in the buffer otherwise the value is the ASCII code for the character read in See also PUTCHAR instruction GETKEY Syntax result GETK...

Страница 90: ...op this is the name of the label IF 18 32 1 THEN 1 21 100 ELSE 1 21 0 ENDIF GOTO top goto the line with the label top IF Syntax 1 IF conditional expression THEN Instruction ENDIF Syntax 2 IF condition...

Страница 91: ...es the operator OR in the conditional expression The following operators can be used to combine conditional expressions AND Logical AND OR Logical OR NOT Logical NOT The following conditional operator...

Страница 92: ...783647 the UD70 will trip on Error 50 Maths Error LIMIT Syntax 1 result LIMIT expression limit_value_expression result LIMIT expression limit_value_expression This mathematical function limits the val...

Страница 93: ...s mathematical function returns the greater of two expressions Example a 12 b MAX a 100 The value returned in b b is 100 because a a is less than 100 If a a is 105 the value returned in b b would be t...

Страница 94: ...uction in the BACKGROUND task only In the CLOCK and ENCODER Tasks program execution continues without waiting At 19200 baud rate it takes 0 5ms to transmit one character The PRINT instruction would th...

Страница 95: ...S232 port function that writes a character to the RS232 communications port when operating in dumb terminal mode only If the function fails it returns 0 0 otherwise it returns 1 1 Example r PUTKEY 65...

Страница 96: ...rns the value of 1 1 When the input value is negative it returns the value of 1 1 Example PRINT SGN 45 SGN 16 SGN 0 This prints values 1 1 1 SQR Syntax result SQR expression This mathematical function...

Страница 97: ...executed within 200ms the Drive trips on Prc2 trip Prc2 trip The WDOG instruction can be used only in the INITIAL and BACKGROUND Tasks The UD70 operating system automatically updates the individual wa...

Страница 98: ...UD70 Issue code 70nu2 7 22 Reference...

Страница 99: ...the registers can also be accessed using the virtual menus 70 to 73 This gives the ability to alter the P Q R and S registers using the RS485 port or any high speed comms option that may be fitted CT...

Страница 100: ...nd auxiliary reference encoder inputs three term PID control loop D term configurable as feed forward or derivative term with the output written automatically to the fast access speed reference 91 02...

Страница 101: ...d and acceleration parameters within the position controller use the units of Encoder lines The diagram below shows how to determine the number of encoder lines for a particular encoder A 1 encoder pu...

Страница 102: ...wing equations lines per ond N encoder ppr sec 4 60 N lines per ond encoder ppr sec 60 4 Acceleration For any axis on a particular machine the maximum rate of acceleration or deceleration will be spec...

Страница 103: ...a maximum of 2700rpm with 300rpm headroom allowed for position recovery The feedback device from the motor is a 1024 pulse per revolution encoder The minimum linear acceleration time for the machine a...

Страница 104: ...FT RESET SOFT RESET does not read the stored Q register values but causes the DPL INITIAL task to run This occurs when MM 00 is set to 1070 and the RESET button is pressed The drive is reset from a tr...

Страница 105: ...ary or reference encoder relative to the position at power up The DPL program can change the value in this parameter at any time _Q2 Slave target position reference Units Encoder lines Range 2 31 to 2...

Страница 106: ...N A P 0 _Q4 is the final profiled position reference for the slave The source of this value can be from the slave position profiler the slave speed profiler the digital lock controller or the cam tabl...

Страница 107: ...the position at power up The DPL program can change the value in this parameter at any time _Q9 PID loop reference Units Encoder lines Range 231 to 2 31 Default Reset H S V S N A P 0 _Q9 is the posit...

Страница 108: ...rs This applies to acceleration in both the forwards and reverse directions If S ramps _Q32 8 1 are selected _Q12 is not used _Q13 Maximum rate of deceleration S ramp Units Encoder lines per second 2...

Страница 109: ...provide headroom for recovering lost position and should generally be set to the same value as the maximum speed clamp in the drive 1 06 _Q16 Maximum PI output Units Encoder lines per second Range 2...

Страница 110: ...atic position reference writing to the PID loop _Q9 _Q4 _Q20 2 Set to 1 to apply a first order filter to the D term _Q20 3 Set to 1 to latch the absolute feedback marker pulse position when it next oc...

Страница 111: ...lue Units Encoder lines Range 2 31 to 2 31 Default Reset H S V S N A P N A If _Q20 5 is set to 1 _Q21 stores the absolute position of the feedback encoder when the freeze input on the Second Encoder M...

Страница 112: ...s the position offset to be added to _Q4 The offset position profile only be used when there are no other position profiles currently in operation _Q26 can be applied when the slave is following a spe...

Страница 113: ...elect between the various functions available See logic diagrams The remaining bits without descriptions are reserved for future use _Q32 1 Selects the direction of the digital lock This allows the ax...

Страница 114: ...ence when the auxiliary marker pulse is seen by setting _Q32 2 to 1 _Q32 14 is reset after _Q32 2 has been set The auxiliary encoder input is also latched so that rigid lock can be achieved see _Q32 2...

Страница 115: ...1 disable ramps _Q32 29 Disables the automatic writing of the return position _ Q40 to _Q2 when switching out of digital lock control to position control _Q32 2 from 1 to 0 When disabled _Q2 is update...

Страница 116: ...continuouslywhenthe camtable is enabled andshouldnot be over writtenbyuser _Q36 Cam table slave starting position Units Encoder lines Range 2 31 to 2 31 Default Reset H S V S N A P 0 _Q36 latches the...

Страница 117: ...2 31 Default Reset H S V S N A P N A When switching out of digital lock and into position control mode _Q32 2 from 1 to 0 _Q40 is written to the main position reference _Q2 The axis will therefore ret...

Страница 118: ...ock Slave speed reference 1 0 _Q32 4 A u xilia ry e n c o d e r _Q34 C a m in d e x _Q32 12 Marker pulse _Q32 14 Set _Q12 _Q13 Accel Decel Linear ramps _Q13 S ramps Accel Decel _Q14 Max Speed 1 0 _Q32...

Страница 119: ...26 _Q27 Slave speed offset 1 0 _Q20 1 _Q4 S la ve p o s itio n re fe re n c e E n a b le p o s itio n re fe re n c e P ro file in p ro g re s s _Q31 11 _Q14 Max Speed 1 0 _Q32 8 _Q12 _Q13 Accel Decel...

Страница 120: ...x _Q11 Auxiliary encoder position Auxiliary encoder speed 1 0 Position lost during acceleration _Q32 27 _Q32 1 D ig ita l lo c k ra tio In ve rt d ire c tio n S ys te m lo c ke d _Q12 _Q13 Accel Decel...

Страница 121: ...lowing error _Q31 1 _Q1 _Q37 1 0 d dt _Q7 1 0 Filter _Q5 _Q6 _Q16 _Q0 91 02 1 0 _Q20 0 _Q20 6 _Q20 7 Loop reference Position error Feedback position Auxiliary position Maximum following error Output l...

Страница 122: ...liary or reference encoder _Q1 E Marker pulse _Q22 _Q20 4 1 0 d dt 1 0 _Q24 _Q18 Reset 1 0 1 0 Freeze pulse Reset Auxiliary marker pulse position Feedback marker pulse position Auxiliary freeze positi...

Страница 123: ...control is enabled _Q32 2 1 the slave axis will accelerate to the maximum digital lock speed _Q15 using linear ramps or S ramps NOTE if S ramps are selected when digital lock is enabled the slave will...

Страница 124: ...lave axis speed locked to the master reference Speed Time _Q31 12 Slave speed The effect of non rigid digital lock on slave motor speed Using S Ramps with Digital Lock If S ramps are selected the mast...

Страница 125: ...r both master and slave encoders The reference point is the position of the slave at the instant the cam function is enabled The software uses linear interpolation to move the cam through each section...

Страница 126: ...t to 0 The master and slave arrays can be of different types and both can be variable or constant arrays The maximum number of elements in a single array is 500 Constant arrays are defined when the pr...

Страница 127: ...5000 20000 10000 CONST slave 5000 15000 0 30000 0 10000 If the slave must always return to the same position at the end of each cam cycle the sum of all the slave array elements must be 0 An easy way...

Страница 128: ...lock control to position control occurs a return position _Q40 will be written once into _Q2 over writing the calculated stopping position This function can be disabled by setting _Q32 29 1 so the ax...

Страница 129: ...n of the slave needs to be reversed this will be achieved using ramps S ramps must be disabled _Q32 8 0 Switching to Cam Table Control When the cam table is enabled _Q32 4 1 the position reference fol...

Страница 130: ...leared 8 12 Timer Counter unit DIGIN 1 D 1 M 0 2 Control DIGIN 0 C EN Timer Reload TI 16 bit up down counter TE Event 500kHz 4MHz u d Logic diagram for the timer counter A hardware timer counter built...

Страница 131: ...event must be cleared by reading the status register 1 EN Enable timer 0 disable all counting 1 enable counting 2 R Re load mode on timer wrap around 0 no re load The timer simply wraps around and co...

Страница 132: ...Hz A 1 to 0 transition on DIGIN0 causes the current counter value to be latched into the TIMER register the counter is then reloaded with the RELOAD register and the TI flag set Use 85 05 to read the...

Страница 133: ...ected do not read this parameter even in the Watch Watch window instead use 85 05 to read the timer counter value The timer is a 16 bit timer with a range between 0 and 65535 Re load value 85 04 When...

Страница 134: ...directly readable by a DPL program The digital TTL output can also be controlled directly from a DPL program The following virtual parameters give access to the TTL I O Parameter Function 86 01 Digit...

Страница 135: ...the RS232 port for Drive to Drive communications The MD29 card and UD70 module have a mode in which the RS232 port can be linked to another MD29 or UD70 and two 32 bit variables can be transmitted be...

Страница 136: ...mmunications set up parameter Drive to Drive communications set up parameter See UD70 set up parameters in Chapter 10 Parameters Data exchange parameters The data to be transmitted must be placed in t...

Страница 137: ...cations with an I O Box Certain run time trips can be disabled such as parameter write over range The actions taken when a run time error occurs are as follows All DPL Tasks stop being executed If the...

Страница 138: ...running Trips when 17 14 1 and 17 15 1 46 48 Internal error Always trips 49 Wrong system loaded Always trips 50 Maths error in the program eg divide by zero overflow etc Trips when 17 14 1 51 DPL arra...

Страница 139: ...call a label See the CALL instruction in Chapter 7 Reference ERROR DELAY can be used only in the INITIAL and BACKGROUND tasks By the nature of the ENCODER and CLOCK Tasks these Tasks cannot support th...

Страница 140: ...32 The Bit field invert Operator has been used and the specified bit field is greater than 32 Re specify the size of the bit field ERROR Syntax error ERROR Variable has not been initialized Before a v...

Страница 141: ...The ERROR task is executed The instructions in the ERROR Task can determine the cause of the run time error and take necessary action such as stopping the Drive system in a controlled manner All stan...

Страница 142: ...UD70 Issue code 70nu2 9 6 Diagnostics...

Страница 143: ...N A 17 04 gives an indication of the level of processor resource available by indicating the percentage of a 128ms period over which the BACKGROUND task will operate ANSI Serial address 17 05 11 99 11...

Страница 144: ...17 13 enables a DPL program to be automatically started when the UD70 is reset or AC power is applied When 17 13 is set at 0 a command must be issued from the UD70 Toolkit software before the DPL prog...

Страница 145: ...n the value writte and no error wil occur Enable watchdog 17 18 0 1 0 When 17 18 is set at 1 the DPL program must execute a WDOG command at least every 200ms otherwise the Drive will trip See the WDOG...

Страница 146: ...te rate codes L2 and L3 in the following table are explained at the end of the table Where no update rate is shown it does not apply Parameter Description 90 01 Main encoder resolver position RO 90 03...

Страница 147: ...1 45 b13 18 33 b12 Set b12 at 0 for b3 to have no effect on 6 32 Set b12 at 1 for b3 to control 6 32 b11 Set b11 at 0 for b2 to have no effect on 6 31 Set b11 at 1 for b2 to control 6 31 b10 Set b10...

Страница 148: ...ue code 70nu2 10 6 Parameters Status word Bit Parameter b15 Not used b14 10 15 b13 10 14 b12 10 13 b11 10 12 b10 10 11 b9 10 10 b8 10 09 b7 10 08 b6 10 07 b5 10 06 b4 10 05 b3 10 04 b2 10 03 b1 10 02...

Страница 149: ...of 91 02 is a 16 bit number consisting of 15 bits plus a sign bit The full scale value results in the speed given by 91 05 Full scale speed When the Drive is used in open loop the resolution is given...

Страница 150: ...for 4000 to represent full scale signal at the input Update rate L3 91 09 Analog input 2 value Scaled for 1000 to represent full scale signal at the input Update rate L3 91 10 Analog input 3 value Sca...

Страница 151: ...rmation Parameter Function 86 01 Digital input 0 DIGIN0 86 02 Digital input 1 DIGIN1 86 03 Digital output An input will read 1 when not connected or at a logic high 5V Maximum input frequency 1MHz Set...

Страница 152: ...igital IN Menu 83 digital OUT Menu 84 control 0 Null Null Null Null Null 1 ADC1 4000 DAC1 1000 bit 1 bit 1 0 ADC1 1 4 20mA 2 ADC2 1000 DAC2 1000 bit 2 bit 2 3 ADC3 1000 DAC3 1000 bit 3 bit 3 4 ADC4 10...

Страница 153: ...ction with the DPL ANSI master commands ANSIREAD ANSIWRITE etc User defined protocols can also be implemented in DPL with the low level PUTCHAR and GETCHAR commands The communication data frame is org...

Страница 154: ...by the Drive at power down RO 32000 18 02 18 10 Read only parameters RO 32000 18 11 18 30 Read write parameters RW 32000 18 31 18 50 Bit parameters RW 0 or 1 19 01 Read only parameter Stored by the D...

Отзывы: