background image

www.deltaww.com

DVP

-

15MC

 Series 

Motion Controller

 

Operation Manual

DVP

-

15MC

 Series 

Motion Controller

 

Operation Manual

20

20

-

01

-

13

Industrial Automation Headquarters

Delta Electronics, Inc. 

Taoyuan Technology Center

No.18, Xinglong Rd., Taoyuan City, 

Taoyuan County 33068, Taiwan

TEL: 886-3-362-6301 / FAX: 886-3-371-6301

Asia

Delta Electronics (Jiangsu) Ltd.

Wujiang Plant 3

1688 Jiangxing East Road, 

Wujiang Economic Development Zone

Wujiang City, Jiang Su Province, P.R.C. 215200

TEL: 86-512-6340-3008 / FAX: 86-769-6340-7290

Delta Greentech (China) Co., Ltd.

238 Min-Xia Road, Pudong District, 

ShangHai, P.R.C. 201209

TEL: 86-21-58635678 / FAX: 86-21-58630003

Delta Electronics (Japan), Inc.

Tokyo Office 

2-1-14 Minato-ku Shibadaimon, 

Tokyo 105-0012, Japan

TEL: 81-3-5733-1111 / FAX: 81-3-5733-1211

Delta Electronics (Korea), Inc.

1511, Byucksan Digital Valley 6-cha, Gasan-dong, 

Geumcheon-gu, Seoul, Korea, 153-704

TEL: 82-2-515-5303 / FAX: 82-2-515-5302

Delta Electronics Int’l (S) Pte Ltd.

4 Kaki Bukit Ave 1, #05-05, Singapore 417939

TEL: 65-6747-5155 / FAX: 65-6744-9228

Delta Electronics (India) Pvt. Ltd.

Plot No 43 Sector 35, HSIIDC 

Gurgaon, PIN 122001, Haryana, India 

TEL : 91-124-4874900 / FAX : 91-124-4874945

Americas

Delta Products Corporation (USA)

Raleigh Office

P.O. Box 12173,5101 Davis Drive, 

Research Triangle Park, NC 27709, U.S.A.

TEL: 1-919-767-3800 / FAX: 1-919-767-8080

Delta Greentech (Brasil) S.A.

Sao Paulo Office

Rua Itapeva, 26 - 3° andar Edificio Itapeva One-Bela Vista

01332-000-São Paulo-SP-Brazil

TEL: 55 11 3568-3855 / FAX: 55 11 3568-3865

Europe

Delta Electronics (Netherlands) B.V.

Eindhoven Office

De Witbogt 20, 5652 AG Eindhoven, The Netherlands

TEL : +31 (0)40-8003800 / FAX : +31 (0)40-8003898

DVP-0191920-0

2

*We reserve the right to change the information in this manual without prior notice.

Summary of Contents for DVP-15MC Series

Page 1: ...elta Electronics Korea Inc 1511 Byucksan Digital Valley 6 cha Gasan dong Geumcheon gu Seoul Korea 153 704 TEL 82 2 515 5303 FAX 82 2 515 5302 Delta Electronics Int l S Pte Ltd 4 Kaki Bukit Ave 1 05 05...

Page 2: ...pecifications 3 2 3 1 2 Devices and Data Types 3 3 3 1 2 1 Devices 3 3 3 1 2 2 Valid Ranges of Devices 3 4 3 1 2 3 Latched Devices 3 5 3 1 2 4 Data Types and Valid Ranges Supported 3 6 3 2 Electrical...

Page 3: ...he Module to DIN rail 5 7 5 2 2 Illustration of Installation Inside the Control Cabinet 5 7 5 2 3 Environmental Temperature in the Control Cabinet 5 7 5 2 4 Actions for Anti interference 5 8 5 2 5 Dim...

Page 4: ...Ethernet Communication Port 6 17 6 7 3 Network Connection of Ethernet Communication Port 6 17 6 7 4 Function Codes that Ethernet Communication Port Supports 6 18 6 8 Motion Communication Port 6 18 6...

Page 5: ...Logic Instructions 8 10 8 2 1 EN and ENO 8 10 Sequence Input Output Instructions 8 10 8 3 1 R_TRIG 8 10 8 3 2 F_TRIG 8 12 8 3 3 RS 8 14 8 3 4 SR 8 16 8 3 5 SEMA 8 18 Sequence Control Instructions 8 20...

Page 6: ...UD 8 59 Math Instructions 8 62 8 9 1 ADD 8 62 8 9 2 SUB 8 65 8 9 3 MUL 8 68 8 9 4 DIV 8 71 8 9 5 MOD 8 74 8 9 6 MODREAL 8 76 8 9 7 MODTURNS 8 78 8 9 8 MODABS 8 80 8 9 9 ABS 8 82 8 9 10 DegToRad 8 84 8...

Page 7: ...8 140 8 12 2 MIN 8 142 8 12 3 SEL 8 145 8 12 4 MUX 8 147 8 12 5 LIMIT 8 149 8 12 6 BAND 8 151 8 12 7 ZONE 8 154 Data Type Conversion Instructions 8 157 8 13 1 BOOL_TO_ 8 157 8 13 2 Bit strings_TO_ 8 1...

Page 8: ...8 14 3 RS485 Communication Instructions 8 237 8 14 3 1 RS485_Link_Manage 8 237 8 14 3 2 RS485_Link_Config 8 239 8 14 3 3 RS485_Link_Status 8 243 8 14 3 4 RS485 Data Exchange Example 8 246 8 14 3 5 RS...

Page 9: ...330 8 19 1 1 CANmotion_SysDiag Motion System Diagnosis 8 330 8 19 1 2 CANmotion_NodeDiag Motion Axis Diagnosis 8 332 8 19 2 CANopen Diagnosis 8 334 8 19 2 1 CANopen_SysDiag CANopen System Diagnosis 8...

Page 10: ...t 11 6 Configuration of Motion Control Instructions 11 6 11 3 Single axis Instructions 11 7 MC_Power 11 7 MC_Home 11 16 MC_MoveVelocity 11 21 MC_Halt 11 28 MC_Stop 11 33 MC_MoveRelative 11 38 MC_MoveA...

Page 11: ...MC_CamOut 11 200 DMC_CamReadPoint 11 206 DMC_CamWritePoint 11 210 DMC_CamSet 11 212 DMC_CamReadTappetStatus 11 216 DMC_CamReadTappetValue 11 221 DMC_CamWriteTappetValue 11 224 DMC_CamAddTappet 11 228...

Page 12: ...Instruction 11 278 11 6 4 9 G50 Precise Stop 11 278 11 6 4 10 G51 Round path transition 11 279 11 6 4 11 G52 Smooth path transition 11 280 11 6 4 12 M Code 11 281 G Code Instruction 11 284 11 6 5 1 DM...

Page 13: ...Appendix A Modbus Communication A 1 Message Format in ASCII Mode A 2 A 2 Message Format in RTU Mode A 5 A 3 Modbus Function Codes Supported A 7 A 4 Modbus Exception Response Code Supported A 7 A 5 In...

Page 14: ...Service Data Object C 8 Appendix D Explanation of Homing Modes D 1 Explanation of Homing Modes D 2 Appendix E List of Accessories E 1 Accessories for CANopen Communication E 2 E 2 Accessories for PRO...

Page 15: ...closure free of airborne dust humidity electric shock and vibration The enclosure should prevent non maintenance staff from operating the device e g key or specific tools are required for operating th...

Page 16: ...1 1 1 Preface Table of Contents 1 1 Explanation of Symbols in This Manual 1 2 1 2 Revision History 1 3...

Page 17: ...n control system configuration and product operation before using DVP 15MC series motion controller 1 1 Explanation of Symbols in This Manual Precautions before operation Before operation please read...

Page 18: ...nosis instructions in Section 8 19 are added 6 Read and Write Offset Bit Value instructions in Section 8 20 are added 7 FCS instructions in Section 8 21 are added 8 The instructions with the name star...

Page 19: ...DVP 15MC Series Motion Controller Operation Manual 1 4 _1 MEMO...

Page 20: ...2 1 2 Overview Table of Contents 2 1 Product Description 2 2 2 2 Functions 2 2 2 3 Profile and Components 2 3...

Page 21: ...encapsulating wire cutting drug manufacturing and so on DVP 15MC series motion controllers include DVP15MC11T and DVP15MC11T 06 For the two models the max numbers of axes they controlled are different...

Page 22: ...5 Incremental encoder port 14 Extension module fixing clip 6 Ethernet communication port 15 Left side extension module port 7 CANopen communication port 16 Nameplate 8 CANmotion communication port 17...

Page 23: ...DVP 15MC Series Operation Manual 2 4 _2 MEMO...

Page 24: ...unctional Specifications 3 2 3 1 1 Specifications 3 2 3 1 2 Devices and Data Types 3 3 3 1 2 1 Devices 3 3 3 1 2 2 Valid Ranges of Devices 3 4 3 1 2 3 Latched Devices 3 5 3 1 2 4 Data Types and Valid...

Page 25: ...near interpolation 8 Max number of axes for circular interpolation 3 Number of cams Size Quantity 64 Cam key points Key points of one single cam Quantity 2048 Built in ports of DVP 15MC series control...

Page 26: ...name Input device Output device Intermediate device 3 Prefix 2 symbol X B W D L 4 Data type of prefix 2 BIT BYTE WORD DWORD QWORD 5 Device example IX0 0 IB0 IW0 ID0 IL0 6 QX0 0 QB0 QW0 QD0 QL0 7 MX0 0...

Page 27: ...MB131071 IW IW0 IW0 IW63 QW QW0 QW0 QW63 MW MW0 MW0 MW65535 ID ID0 ID0 ID31 QD QD0 QD0 QD31 MD MD0 MD0 MD32767 IL IL0 IL0 IL15 QL QL0 QL0 QL15 ML ML0 ML0 ML16383 The table of Modbus device addresses...

Page 28: ...0000000 5 LWORD 16 0000000000000000 FFFFFFFFFFFFFFFF 16 0000000000000000 6 USINT 0 255 0 7 UINT 0 65535 0 8 UDINT 0 4294967295 0 9 ULINT 0 18446744073709551615 0 10 SINT 128 127 0 11 INT 32768 32767 0...

Page 29: ...25 C 70 C Temperature 5 95 Humidity Weight About 425g Electrical specification for input points Item Content Number of input channels 16 channels Channel type High speed digital input type for the 16...

Page 30: ...s 3 7 3_ Item Content Max loading Resistance 0 5A 1point 2A ZP Inductance 13W 24VDC Bulb 2 5W 24VDC Max cable length The shielded cable 500m The unshielded cable 300m 1 UP and ZP must connect the auxi...

Page 31: ...DVP 15MC Series Motion Controller Operation Manual 3 8 _3 MEMO...

Page 32: ...Module 4 2 4 3 2 Allocation of Left side Network Module Addresses 4 3 4 3 3 Method of Reading Writing of Left side Modules 4 3 4 4 Right side Extension 4 3 4 4 1 Connectable Right side Extension Modul...

Page 33: ...pter 6 for details on the functions of communication ports 4 2 Power Supply Delta power modules are recommended as the power supply for the motion controller The information of Delta power modules is...

Page 34: ...on allocation of left side extension module mapping areas Pay attention to how the mapping address expression format is changed in the operation manual For example the output mapping area for DVPPF02...

Page 35: ...special modules are connectable such as analog modules temperature modules and pulse modules Up to 14 digital modules and special modules at most are connectable to the right side of the motion contr...

Page 36: ...of the servo drive model Relevant servo parameter settings are shown in the following table when the motion controller and the servo drive are connected Parameter Explanation Setting value Explanation...

Page 37: ...rives Notes 1 Please refer to the servo user manual for the wiring of ASDA A2 XXXX M series servo drives servo motors and encoders 2 Choose UC CMC003 01A or UC CMC005 01A or UC CMC010 01A communicatio...

Page 38: ...ng table includes the information of SD card family members Controllers only supports SD and SDHC Please make sure to purchase the SD card of the right specification that the controller supports SD ca...

Page 39: ...te protection switch for general SD cards The data can not be written into SD card if the switch is moved to the Lock position Hence please ensure that the write protection switch of SD card has been...

Page 40: ...4 Connecting to the Right side Extension Module 5 5 5 1 5 Installing and Removing the SD Card 5 6 5 2 Installing the Module in the Control Cabinet 5 8 5 2 1 Installing the Module to DIN rail 5 8 5 2 2...

Page 41: ...13 03 04 14 04 05 15 05 06 16 06 07 17 07 128 EX TEN SION POR T 11 0 68 4 11 6 2 Unit mm 5 1 2 Dimensions of Left side and Right side Extension Modules See the following dimension figure of a left sid...

Page 42: ...onnection of DVP 15MC series motion controller and DVPDNET SL Pull open the extension module clips on the top left and bottom left of DVP 15MC series motion controller and install DVPDNET SL along fou...

Page 43: ...SL into DIN rail Use standard 35mm DIN rail Pull open DIN rail clips of DVP 15MC series motion controller and DVPDNET SL and then insert the two modules into DIN rail Press the DIN rail clips into DVP...

Page 44: ...t of DVP 15MC series motion controller to fix the module tightly and ensure that their contact is normal as step 2 in figure 5 1 4 1 C A N E R R 1 R U N E R R 2 R U N 0 0 1 0 0 0 0 1 1 1 0 1 0 2 1 2 0...

Page 45: ...0 7 Figure 5 1 4 2 5 1 5 Installing and Removing the SD Card The memory card slot of DVP 15MC series motion controller The memory card slot is seated in the right side of the front of DVP 15MC series...

Page 46: ...SD card in the right direction Removing SD card Just push the SD card to the end of the slot so that the SD card will loosen and rebound from inside the slot And then remove the SD card out of the sl...

Page 47: ...module inside the control cabinet Et her net LAN 1 LAN 2 C AN 1 C AN 2 C AN open M ot i on O U T I N DVP1 5MC 1 1 T 00 0 1 02 03 0 4 05 06 0 7 10 11 12 13 1 4 15 16 1 7 00 0 1 02 03 0 4 05 06 0 7 0 0...

Page 48: ...use only The control cabinet which is 1 0m 2 0m in height is easier for installation and operation Keep the installation away from the high voltage equipment and power equipment The power supply in t...

Page 49: ...e Control Cabinet Installation Figure DVP 15MC series motion controller has to be installed in an enclosure In order to ensure that the controller radiates heat normally the space between the controll...

Page 50: ...32 Port Supports 6 13 6 4 2 Definitions of RS 232 Port Pins 6 13 6 4 3 RS 232 Hardware Connection 6 13 6 4 4 Supported Function Codes and Exception Codes 6 14 6 5 SSI Absolute Encoder Port 6 15 6 5 1...

Page 51: ...ion Network Connection 6 22 6 8 4 Communication Speed and Communication Distance 6 22 6 9 CANopen Communication Port 6 23 6 9 1 Functions that CANopen Communication Port Supports 6 23 6 9 2 Pins of CA...

Page 52: ...r loads The controller uses an individual supply power Add a noise filter and an isolation transformer before the controller s supply power The isolation transformer is installed between the supply po...

Page 53: ...loads N L3 L1 L2 6 1 2 Safety Circuit Wiring The action of any device inside the motion controller may affect the behavior of the external equipment under the motion controller s control over the ser...

Page 54: ...device The electromagnetic contactor relay and other switch can be used as the isolation device to prevent the system from becoming unstable when the power supply is discontinuous Power indicator Eme...

Page 55: ...g the filter value can decrease the vibration of input signals or the influence from external interference Input filter time t 31us 0 255 So the filter time is a multiple of 31us and 0 is the default...

Page 56: ...t flows into the common ports S0 and S1 S0 00 Motion Controller Sinking 24VDC S1 10 Motion Controller Sinking 24VDC Figure 6 2 2 1 See the relevant wiring circuit in the following figures The input po...

Page 57: ...ontroller Sourcing 24VDC 10 S1 Motion Controller Sourcing 24VDC Figure 6 2 2 4 See the wiring circuit below The input points of the motion controller 00 07 correspond to S0 as shown below Motion Contr...

Page 58: ...Setting and Network Construction 6 9 6_ 6 2 3 Output Point Wiring All local output points of the motion controller are of transistor output The wiring circuit is shown as below Q0 5 30V DC 0 5A ZP U...

Page 59: ...5 port supports are 1 255 The broadcast function is not supported Refer to appendix A for details on Modbus communication and Modbus device addresses 6 3 2 Definitions of RS 485 Port Pins The motion c...

Page 60: ...ud rate 9600 19200 38400 57600 115200 Mode ASCII RTU Communication format 7 E 1 7 E 2 7 N 1 7 N 2 8 E 1 8 E 2 7 O 1 7 O 2 8 E 1 8 E 2 8 N 1 8 N 2 8 N 1 8 N 2 8 O 1 8 O 2 8 O 1 8 O 2 6 3 4 Supported Fu...

Page 61: ...2 The exception codes that RS 485 port of the motion controller supports are listed in the following table Exception response code Indication 16 01 Unsupportive function code 16 02 Unsupportive Modbu...

Page 62: ...d 16 10 The station addresses that RS 232 port supports are 1 255 The broadcast function is not supported Refer to appendix A for details on Modbus communication and Modbus device addresses 6 4 2 Defi...

Page 63: ...f writable readable registers Available register 16 01 Read output bit register values 256 Bit register 16 02 Read bit register values 256 Bit register 16 03 Read one single or multiple word register...

Page 64: ...ncoder axis to control the motion of slave axes according to the number of pulses received via the encoder port 6 5 2 Definitions of SSI Port Pins The motion controller s COM SSI port is a 15 pin D SU...

Page 65: ...te The power supply for COM SSI port of the motion controller is 5V power When VCC 5V connect the power voltage VCC of SSI encoder to pin 15 of COM SSI interface and 0V of SSI encoder to pin 8 of COM...

Page 66: ...ental encoder axis for either of the two encoders to control the motion of slave axes according to the number of pulses received at the encoder port 6 6 2 Definition of Incremental Encoder Port Pins T...

Page 67: ...of the motion controller and the wiring method are shown below Note The power supply for Encoder port of the motion controller is 5V power 1 When VCC 5V connect the power voltage VCC of an encoder to...

Page 68: ...n Modbus TCP communication refer to appendix B Both of the two Ethernet ports support Modbus protocol LAN1 port can work as a slave only and LAN2 port can work as a master or a slave LAN2 supports Eth...

Page 69: ...le The two Ethernet ports are independant and their IP addresses need be set seperately The default IP address for LAN1 is 192 168 0 1 and the default IP address for LAN2 is 192 168 1 1 Pin No Signal...

Page 70: ...er 16 03 Read one single or multiple word register values 100 Word register 16 05 Write one single bit register value 1 Bit register 16 06 Write one single word register value 1 Word register 16 0F Wr...

Page 71: ...n No Signal Definition 1 2 3 4 5 6 7 8 CAN2 Motion 1 CAN_H Signal 2 CAN_L Signal 3 CAN_GND 0 VDC 4 Reserved Reserved 5 Reserved Reserved 6 Reserved Reserved 7 CAN_GND 0 VDC 8 Reserved Reserved 6 8 3 M...

Page 72: ...orts Storage capacity Data type 1bit BOOL 8bit SINT USINT BYTE 16bit INT UINT WORD 32bit DINT UDINT REAL DWORD 64bit LINT ULINT LREAL LWORD Supports SDO service Supports standard expedited SDO transmi...

Page 73: ...en Communication Port The input mapping area is MW5000 MW5499 and output mapping area is MW5500 MW5999 when the motion controller works as CANopen master The input mapping area is MW5000 MW5031 and ou...

Page 74: ...stor of 120 should be connected between CAN_H and CAN_L of two respective ends of the network Users can purchase Delta terminal resistor TAP TR01 6 9 5 CANopen Communication Rate and Communication Dis...

Page 75: ...DVP 15MC Series Motion Controller Operation Manual 6 26 _6 MEMO...

Page 76: ...ity levels of Tasks 7 4 7 1 3 Watchdog for a Task 7 6 7 1 4 Motion and Communication Instructions for Each Task Type 7 7 7 2 The Impact of PLC RUN or STOP on Variables and Devices 7 10 7 3 Relationshi...

Page 77: ...ining interval Time interval between tasks S ystem processing IO IO means I O refresh I O includes local I O points and left side and right side extension module data and CANopen data The data can be...

Page 78: ...by event Event task An event task is executed once just when the specified event happens The timing for execution of an event task depends on the timing for occurring of the event and the priority lev...

Page 79: ...is detected at Encoder port of the controller 7 1 2 Priority levels of Tasks The controller can not perform multiple tasks simultaneously Every task must be given a priority level and they are execut...

Page 80: ...ogram Task execution time Execution finished Task execution condition met Pause Execution finished Execution condition met Execution finished Task execution time Task execution time IO User program Ex...

Page 81: ...nded yet The cyclic task execution is completed The controller executes the system processing due to no other task request 7 1 3 Watchdog for a Task Every task can be given a watchdog When the task ex...

Page 82: ...r V MC_Home V MC_MoveVelocity V MC_Halt V MC_Stop V MC_MoveRelative V MC_MoveAdditive V MC_MoveAbsolute V MC_MoveSuperimposed V MC_Haltsuperimposed V MC_SetPosition V MC_SetOverride V MC_Reset V DMC_S...

Page 83: ...etValue V V V V DMC_CamWriteTappetValue V V V V Application instructions APF_RotaryCut_Init V APF_RotaryCut_In V APF_RotaryCut_Out V G code instructions DMC_CartesianCoordinate V DMC_ReadMFunction V V...

Page 84: ...en V V V V ETH_Link_Config V V V V ETH_Link_Manage V V V V ETH_Link_Status V V V V ETH_Link_Config_Ext V V V V ETH_ SetServerlinkkeeptime V V V V ETH_Socket_Manage V V V V ETH_Socket_Config V V V V ET...

Page 85: ...riables and devices are retained When DVP 15MC series motion controller is switched from STOP to RUN variables and devices keep current values 7 3 Relationship between Motion Program and Motion Bus DV...

Page 86: ...ogram execution It is about 0 5ms for the communication between DVP 15MC series motion controller and a servo We recommend that the value is rounded up to an integer in application For example 5 servo...

Page 87: ...DVP 15MC Series Motion Controller Operation Manual 7 12 _7 MEMO...

Page 88: ...2 MoveBit 8 21 8 5 3 TransBit 8 23 8 5 4 MoveDigit 8 25 8 5 5 Exchange 8 27 8 5 6 Swap 8 29 8 6 1 LT 8 31 8 6 2 LE 8 33 8 6 3 GT 8 35 8 6 4 GE 8 37 8 6 5 EQ 8 39 8 6 6 NE 8 41 8 7 1 TON 8 43 8 7 2 TOF...

Page 89: ...91 8 9 15 ASIN 8 93 8 9 16 ACOS 8 95 8 9 17 ATAN 8 97 8 9 18 LN 8 99 8 9 19 LOG 8 101 8 9 20 SQRT 8 103 8 9 21 EXP 8 105 8 9 22 EXPT 8 107 8 9 23 RAND 8 109 8 9 24 TRUNC 8 111 8 9 25 FLOOR 8 113 8 9 2...

Page 90: ..._Open 8 215 8 14 2 10ETH_Socket_Send 8 217 8 14 2 11ETH_Socket_Receive 8 221 8 14 2 12ETH_Socket_Close 8 225 8 14 2 13ETH_Socket_Status 8 227 8 14 2 14Ehternet Free Protocol Example 8 230 8 14 3 RS485...

Page 91: ...8 308 8 17 1 PID 8 312 8 17 2 GPWM 8 323 8 18 1 ADR 8 325 8 19 1 Motion Diagnosis 8 327 8 19 1 1 CANmotion_SysDiag Motion System Diagnosis 8 327 8 19 1 2 CANmotion_NodeDiag Motion Axis Diagnosis 8 32...

Page 92: ...Bit Move Bits MoveDigit Move Digits Exchange Data Exchange Swap Swap Bytes Comparison Instructions LT Less Than LE Less Than or Equal to GT Greater Than GE Greater Than or Equal to EQ Equal to NE Not...

Page 93: ...DegToRad Degrees to Radians RadToDeg Radians to Degrees SIN Sine COS Cosine TAN Tangent ASIN Arc sine ACOS Arc cosine ATAN Arc tangent LN Natural Logarithm LOG Base 10 Logarithm SQRT Square Root EXP N...

Page 94: ...value ETH_Link_Config Configure MODBUS TCP data exchange ETH_Link_Manage Enable disable MODBUS TCP data exchange ETH_Link_Status Watch MODBUS TCP data exchange status ETH_Link_Config_Ext Configure the...

Page 95: ...String LEN String Length FIND Find String Immediate Refresh Instructions FROM Read CR value TO Write Value to CR ImmediateInput Immediate Refresh of Input Points ImmediateOutput Immediate Refresh of O...

Page 96: ...the FB instruction will not be updated Sequence Input Output Instructions FB FC Explanation Applicable model FB R_TRIG is used for the rising edge trigger DVP15MC11T DVP15MC11T 06 Parameters Paramete...

Page 97: ...8 10 _8 Programming Example The variable table and program Variable name Data type Initial value R_TRG R_TRIG R_TRG_EN BOOL FALSE R_TRG_CLK BOOL FALSE R_TRG_Q BOOL Timing Chart 1 R_TRIG EN ENO CLK Q...

Page 98: ...INT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING CLK Q Note The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type Functio...

Page 99: ...DVP 15MC Series Motion Controller Operation Manual 8 12 _8 Timing Chart 1 F_TRIG EN ENO CLK Q F_TRG F_TRG_EN F_TRG_CLK F_TRG_Q F_TRG_CLK F_TRG_Q...

Page 100: ...eset signal TRUE or FALSE Q Output signal Output Output signal TRUE or FALSE Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LIN...

Page 101: ...ial value RS1 RS RS1_EN BOOL FALSE RS1_SET BOOL FALSE RS1_Reset BOOL FALSE RS1_Q BOOL Timing Chart Case 1 When RS1_SET is TRUE the output RS1_Q is TRUE If RS1_Reset is TRUE RS1_Q is FALSE Case 2 When...

Page 102: ...eset signal TRUE or FALSE Q Output signal Output Output signal TRUE or FALSE Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LIN...

Page 103: ...e SR1 SR SR1_EN BOOL FALSE SR1_SET BOOL FALSE SR1_Reset BOOL FALSE SR1_Q BOOL Timing Chart Case 1 When SR1_SET is TRUE SR1_Q is TRUE When SR1_Reset is TRUE SR1_Q is FALSE Case 2 SR1_SET is given the p...

Page 104: ...put Output signal TRUE or FALSE Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING CLAIM RE...

Page 105: ...BOOL FALSE SEMA1_Q BOOL Timing Chart Case 1 When SEMA1_CLAIM is TRUE SEMA1_Q is TRUE in the second period When SEMA1_RELEASE is TRUE SEMA1_Q changes to FALSE immediately Case 2 When SEMA1_CLAIM is TR...

Page 106: ...which JMP instructions jump must be in the same POU in the LD program Otherwise the jump will not take effect Programming Example Variable table Variable name Data type Current value Start BOOL TRUE S...

Page 107: ...l number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to conn...

Page 108: ...the input parameter is connected to InOut Input signal Input Move destination Depends on the data type of the variable that the input parameter is connected to Boolean Bit string Integer Real number T...

Page 109: ...bit is not performed Programming Example The variable table and program Variable name Data type Current value MovBit_EN BOOL TRUE MovBit_In USINT 31 MovBit_Inpos UINT 2 MovBit_InOutPos UINT 3 MovBit_I...

Page 110: ...of bits to move Depends on the data type of the variable that the input parameter is connected to InOut Input signal Input Move destination Depends on the data type of the variable that the input par...

Page 111: ...is not performed Programming Example The variable table and program Variable name Data type Current value TrsBit_EN BOOL TRUE TrsBit_In USINT 63 TrsBit_InPos UINT 1 TrsBit_InOutPos UINT 2 TrsBit_Size...

Page 112: ...data type of the variable that the input parameter is connected to InOut Input signal Input Move destination Depends on the data type of the variable that the input parameter is connected to Boolean B...

Page 113: ...E MovDigt_In UDINT 16 1234 MovDigt_InPos UINT 1 MovDigt_InOutPos UINT 2 MovDigt_Size UINT 2 MovDigt_Inout UDINT 16 2300 Move Figure 0 0 1 0 1 1 0 0 In 16 1234 Bit0 B it3 B it4 Bit7 0 1 0 0 1 0 0 0 Bit...

Page 114: ...Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 In2 Note The symbol indicates that the parameter is allowed to...

Page 115: ...igure While the Exchange instruction is executed the values of Exchg_In1 and Exchg_In2 are always exchanged In1 Input parameter Input value Exchg_In1 In2 Exchg_In2 In1 Exchg_In2 In2 Exchg_In1 Exchange...

Page 116: ...ger Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed...

Page 117: ...15MC Series Motion Controller Operation Manual 8 30 _8 Swap Figure 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 bit0 bit15 Swap_In High byte Low byte 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Out1 High byte Low byte bit0 bi...

Page 118: ...date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 to InN Out Note The symbol indicates that the parameter is allowed to connect t...

Page 119: ...Out1 changes to FALSE when the values of LT_In1 LT_In2 and LT_In3 are 20 10 and 100 respectively and LT_EN changes to TRUE as shown in Variable 2 Variable 1 Variable name Data type Current value LT_EN...

Page 120: ...BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 to InN Out Note The symbol indicates that the parameter is allowed to connect to the variab...

Page 121: ...1 Out1 changes to FALSE when the values of LE_In1 LE_In2 and LE_In3 are 20 10 and 100 respectively and LE_EN changes to TRUE as shown in Variable 2 Variable 1 Variable name Data type Current value LE...

Page 122: ...BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 to InN Out Note The symbol indicates that the parameter is allowed to connect to the variab...

Page 123: ...anges to FALSE when the values of GT_In1 GT_In2 and GT_In3 are 20 10 and 100 respectively and GT_EN changes to TRUE as shown in Variable 2 Variable 1 Variable name Data type Current value GT_EN BOOL T...

Page 124: ...BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 to InN Out Note The symbol indicates that the parameter is allowed to connect to the variab...

Page 125: ...1 changes to FALSE when the values of GE_In1 GE_In2 and GE_In3 are 10 10 and 100 respectively and GE_EN changes to TRUE as shown in Variable 2 Variable 1 Variable name Data type Current value GE_EN BO...

Page 126: ...OOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 to InN Out Note The symbol indicates that the parameter is allowed to connect to the variable...

Page 127: ...nges to FALSE when the values of EQ_In1 EQ_In2 and EQ_In3 are 10 50 and 100 respectively and EQ_EN changes to TRUE as shown in Variable 2 Variable 1 Variable name Data type Current value EQ_EN BOOL TR...

Page 128: ...parameter is allowed to connect to the variable or constant of the data type Function Explanation NE is used for a not equal comparison of two variables and constants Out is TRUE if In1 In2 Otherwise...

Page 129: ...riable name Data type Current value NE_EN BOOL TRUE NE _In1 INT 100 NE _In2 UINT 50 Out1 BOOL TRUE Variable 2 Variable name Data type Current value NE_EN BOOL TRUE NE _In1 INT 100 NE _In2 UINT 100 Out...

Page 130: ...ring Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In PT Q ET Note The symbol indicates that the paramete...

Page 131: ...imer starts to measure the time When the value of TON1_ET equals the setting value of TON1_PT TON1_Q is TRUE When the timer stops measuring time TON1_In is reset to FALSE and TON1_ET and TON1_Q are bo...

Page 132: ...E WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In PT Q ET Note The symbol indicates that the parameter is allowed to connect to the variable or constan...

Page 133: ...UE TOF1_Q is TRUE When TOF1_In is FALSE the timer starts to measure the time When the value of TOF1_ET equals the setting value of TOF1_PT TOF1_Q is FALSE and the timer stops timing Case 3 When TOF1_I...

Page 134: ...m33s709 551ms Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In PT Q ET Note The symbol...

Page 135: ...hen the value of TP1_ET equals the setting value of TP1_PT TP1_Q is FALSE When TP1_In is FALSE TP1_ET is reset Case 2 TP1_PT sets the time for off delay When TP1_In is TRUE and the timer starts to mea...

Page 136: ...rom FALSE to TRUE BOOL TRUE or FALSE FALSE When Enable is TRUE Output Parameters Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Yea...

Page 137: ...eter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE TotalWorkTime Shows total work time of the controller TIME T 0ms 213503d23h34m33s709 551m...

Page 138: ...rameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE PowerOnTime Shows total power on time of the controller TIME T 0ms 213503d23h34m33s709...

Page 139: ...type Valid range Valid TRUE when the output of the instruction is valid BOOL TRUE FALSE Error TRUE when an error occurs in the instruction execution BOOL TRUE FALSE ErrorID Contains the error code whe...

Page 140: ...es from FALSE to TRUE Error changes to TRUE and ErrorID shows corresponding error codes When Enable changes from TRUE to FALSE Error changes to FALSE Function The Sys_WdgStatus instruction is used to...

Page 141: ...UE when CV equals PV TRUE or FALSE CV Counter value Output Counter present value 0 4294967295 Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT...

Page 142: ...LSE CTU1_PV UDINT 4 CTU1_Q BOOL CTU1_CV UDINT Timing Chart Case 1 If CTU counts up normally the value of CTU1_CV is increased by 1 whenever CTU1_CU is triggered once Case 2 When CTU1_CV equals CTU1_PV...

Page 143: ...t Counter present value 0 4294967295 Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING CU...

Page 144: ...CTD1_CV is 0 Case 2 When CTD1_Load is TRUE and CTD1_CV equals the set value of CTD1_PV CTD1_Q changes from TRUE to FALSE At the moment CTD1_CV does not count down when CTD1_CD is triggered Case 3 If...

Page 145: ...counter present value TRUE or FALSE Load Load signal Input For writing the down counter value TRUE or FALSE PV Preset value Input Counter setting value 0 4294967295 QU Output signal Output Q is TRUE w...

Page 146: ...will not count down while Load is TRUE The counter will not count up while Reset is TRUE Programming Example The variable table and program Variable name Data type Initial value CTUD1 CTUD CTUD1_EN BO...

Page 147: ...CTUD1_Load is TRUE and CTUD1_CV equals CTUD1_PV CTUD1_QU changes to TRUE and CTUD1_QD changes to FALSE At the moment if CTUD1_CD is triggered the instruction can not count down Case 4 If the instructi...

Page 148: ...e 2 8 and the number can be increased or reduced via the programming software in creating a program Depends on the data type of the variable that the input parameter is connected to Out Sum Output The...

Page 149: ...oftware if the data type of the variable that Out is connected to is LINT For the data type about time and date following combinations are supported only 1 In1 is TIME In2 is TIME and Out is TIME 2 In...

Page 150: ...bles ADD_In1 ADD_In2 and Out1 are DT TIME and DT respectively The values of ADD_In1 and ADD_In2 are DT 2016 9 1 8 00 00 and TIME 1H53M34S respectively The value of Out1 is DT 2016 09 01 09 53 34 when...

Page 151: ...BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 In2 Out Note The symbol indicates that the parameter is allowed to connect to the variable...

Page 152: ...will occur during the compiling of the software if any input variable is omitted But the output variable is allowed to omit The difference between In1 and In2 may be out of the valid range of the data...

Page 153: ...s to TRUE as shown in Variable 3 Variable 1 Variable name Data type Current value SUB_EN BOOL TRUE SUB _In1 INT 100 SUB _In2 INT 40 Out1 INT 60 Variable 2 Variable name Data type Current value SUB_EN...

Page 154: ...software in creating a program Depends on the data type of the variable that the input parameter is connected to Out Product Output The multiplication result of In1 InN Depends on the data type of th...

Page 155: ...t Out is connected to is LINT Precautions for Correct Use The input variables are not allowed to omit An error will occur during the compiling of the software if any input variable is omitted But the...

Page 156: ...Logic Instructions 8 69 8_ The variable table and program Variable name Data type Initial value MUL_EN BOOL TRUE MUL _In1 INT 10 MUL _In2 INT 50 Out1 INT 500 1 MUL EN ENO In1 Out In2 MUL_EN MUL_In1 MU...

Page 157: ...eger Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 In2 Out Note The symbol indicates that the parameter is al...

Page 158: ...alue of In2 is 0 The division result of In1 and In2 may be out of the valid range of the data type of Out For example the data types of DIV _In1 and DIV _In2 are both INT with their respective values...

Page 159: ...er for this type of division Programming Example The data types of variables DIV _In1 DIV _In2 and Out1 are all INT The values of DIV _In1 and DIV _In2 are 100 and 20 respectively The value of Out1 is...

Page 160: ...1 In2 Out Note The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type Function Explanation The instruction is used to get the remainder of the divis...

Page 161: ...0 In other words the divisor in the division operation can not be 0 The value of Out will be 0 if the value of In2 is 0 Programming Example The data types of variables MOD _In1 MOD _In2 and Out1 are...

Page 162: ...D DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In1 In2 Out Note The symbol indicates that the parameter is allowed to connect to the variable or constant of...

Page 163: ...AL respectively The values of MODREAL _In1 and MOD _In2 are 10 5 and 2 5 respectively The value of Out1 is 0 5 when MODREAL _EN changes to TRUE The variable table and program Variable name Data type C...

Page 164: ...he data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL...

Page 165: ...peration can not be 0 The value of Out will be 0 if the value of In2 is 0 Programming Example The data types of variables MODTURNS _In1 MODTURNS _In2 are both REAL and Out1 is DINT The values of MODTU...

Page 166: ...data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LR...

Page 167: ...oth REAL and the data type of Out1 is LREAL The values of MODABS _In1 and MODABS _In2 are 400 23 and 360 0 respectively The value of Out1 is 40 2300109863281 when MODABS _EN changes to TRUE The values...

Page 168: ...ariable or constant of the data type Function Explanation ABS finds the absolute value of the input parameter In The result is output to Out That is Out In The input variable and output variable are a...

Page 169: ...al 8 82 _8 Variable 1 Variable name Data type Current value ABS_EN BOOL TRUE ABS _In INT 10 Out1 INT 10 Variable 2 Variable name Data type Current value ABS_EN BOOL TRUE ABS _In INT 20 Out1 INT 20 The...

Page 170: ...pe Function Explanation DegToRad is used to convert the input parameter In to a radian and the result is output to Out That is Out In 180 The units of In and Out are degree and radian respectively Use...

Page 171: ...e Data type Current value DegToRad_EN BOOL TRUE DegToRad _In INT 10 Out1 LREAL 0 174532925199433 Variable 2 Variable name Data type Current value DegToRad_EN BOOL TRUE DegToRad _In INT 10 Out1 LREAL 0...

Page 172: ...TE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type Function Explanation RadToDeg is used to convert the input param...

Page 173: ...adToDeg _In is 10 when RadToDeg _EN changes to TRUE The value of Out1 is 572 957795130824 as RadToDeg _In is 10 Variable 1 Variable name Data type Current value RadToDeg _EN BOOL TRUE RadToDeg _In INT...

Page 174: ...number Time date String BxOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to conne...

Page 175: ...ample The data types of variables SIN _In and Out1 are INT and LREAL respectively The value of Out1 is 0 54402111088937 if the value of SIN _In is 10 when SIN _EN changes to TRUE The value of Out1 is...

Page 176: ...umber Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to connect...

Page 177: ...types of variables COS _In and Out1 are INT and LREAL respectively The value of Out1 is 0 839071529076452 if the value of COS _In is 10 when COS _EN changes to TRUE The value of Out1 is 0 83907152907...

Page 178: ...ation result Output Operation result Depends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWO...

Page 179: ...ompiling of the software if the input variable is omitted But the output variable is allowed to omit Programming Example The data types of variables TAN _In and Out1 are INT and LREAL respectively The...

Page 180: ...the input parameter is connected to Out Operation result Output Operation result 2 2 Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT...

Page 181: ...not go to the error state if the value of In is out of 1 0 1 0 and the value of Out is nonnumeric as shown in the following table and program The variable table and program Variable name Data type Cur...

Page 182: ...String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to connect to the variable...

Page 183: ...eric The variable table and program Variable name Data type Current value ACOS_EN BOOL TRUE ACOS_In REAL 2 0 Out1 LREAL 1 QNAN 1 ACOS EN ENO In Out ACOS_EN ACOS_In Out1 Programming Example The data ty...

Page 184: ...date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to connect to the var...

Page 185: ...input value of In is Programming Example The data types of variables ATAN_In and Out1 are REAL and LREAL respectively The value of Out1 is 0 785398163397448 if the value of ATAN_In is 1 0 when ATAN_E...

Page 186: ...he natural logarithm of In Depends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT U...

Page 187: ...Out is nonnumeric when the input value of In is a non positive number as shown in the following table The variable table and program Variable name Data type Current value LN_EN BOOL TRUE LN_In REAL 2...

Page 188: ...nected to Out Logarithm Output The base 10 logarithm Depends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYT...

Page 189: ...alue of Out is a nonnumeric value when the input value of In is a non positive number as shown in the following table The variable table and program Variable name Data type Current value LOG_EN BOOL T...

Page 190: ...is a non negative number Out Square root Output Square root Depends on the data type of the variable that the output parameter is connected to And it is a non negative number Boolean Bit string Integ...

Page 191: ...put value of Out is a nonnumeric value when the input value of In is a negative number The variable table and program Variable name Data type Current value SQRT_EN BOOL TRUE SQRT_In REAL 2 0 Out1 LREA...

Page 192: ...n result with the base number e and exponent In Depends on the data type of the variable that the output parameter is connected to And it is a non negative number Boolean Bit string Integer Real numbe...

Page 193: ...t the output variable is allowed to omit When the value of In is 0 and a nonnumeric value the corresponding output values of Out is listed in the following table In Out 0 1 0 0 0 nonnumeric nonnumeric...

Page 194: ...Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Pwr Out Note The symbol indicates that the p...

Page 195: ...Out1 is 100 0 when EXPT _EN changes to TRUE The value of Out1 is 100 0 as the values of EXPT _In and EXPT_Pwr are 10 and 2 respectively Variable 1 Variable name Data type Current value EXPT_EN BOOL TR...

Page 196: ...1 Out Note The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type Function Explanation RAND is used to generate a random number and the result is ou...

Page 197: ...nual 8 110 _8 Programming Example A random number is generated by writing RAND 0 as below The variable table and program Variable name Data type Current value RAND_EN BOOL TRUE RAND_In INT 0 Out1 DINT...

Page 198: ...ORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to connect to the variable or constant of th...

Page 199: ...he value of Out1 is 5 when TRUNC _EN changes to TRUE And the value of Out1 is 10 as the values of TRUNC _In 10 8 Variable 1 Variable name Data type Current value TRUNC_EN BOOL TRUE TRUNC _In REAL 5 6...

Page 200: ...ndicates that the parameter is allowed to connect to the variable or constant of the data type Function Explanation FLOOR is used to get the integral part of a real number and the result is output to...

Page 201: ...hen the value of Out1 is 5 when FLOOR _EN changes to TRUE And the value of Out1 is 11 as the values of FLOOR _In 10 2 Variable 1 Variable name Data type Current value FLOOR_EN BOOL TRUE FLOOR _In REAL...

Page 202: ...INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type Function Explanation FRACTION is...

Page 203: ...Out1 is 0 6 when FRACTION _EN changes to TRUE And the value of Out1 is 0 8 as the values of FRACTION _In 10 8 Variable 1 Variable name Data type Current value FRACTION_EN BOOL TRUE FRACTION _In REAL...

Page 204: ...e that the input parameter is connected to Out Operation result Output AND operation result of In1 InN Depends on the data type of the variable that the output parameter is connected to Boolean Bit st...

Page 205: ...d In2 is conducted as below If the data type of an input variable is BOOL the data types of all input and output variables are required to be BOOL Otherwise an error will occur in the compiling of the...

Page 206: ...spectively The values of AND_In1 and AND_In2 are 255 and 256 respectively and the value of Out1 is 0 when AND_EN is TRUE The variable table and program Variable name Data type Current value AND_EN BOO...

Page 207: ...t the input parameter is connected to Out Operation result Output OR operation result of In1 InN Depends on the data type of the variable that the output parameter is connected to Boolean Bit string I...

Page 208: ...onducted as below If the data type of an input variable is BOOL the data types of all input and output variables are required to be BOOL Otherwise an error will occur in the compiling of the software...

Page 209: ...D and WORD respectively The values of OR_In1 and OR_In2 are 255 and 256 respectively and the value of Out1 is 511 when OR_EN is TRUE The variable table and program Variable name Data type Current valu...

Page 210: ...INT REAL LREAL TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type Function Explanation NOT is used for the b...

Page 211: ...e The data types of NOT _In and Out1 are both BYTE The value of In1 is 10 and the value of Out1 is 245 when NOT_EN is TRUE The variable table and program Variable name Data type Current value NOT_EN B...

Page 212: ...of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME D...

Page 213: ...of the bit values of In1 and In2 is conducted as below If the data type of an input variable is BOOL the data types of all input and output variables are required to be BOOL Otherwise an error will oc...

Page 214: ...ta type Current value XOR_EN BOOL TRUE XOR _In1 BYTE 10 XOR _In2 BYTE 50 Out1 BYTE 56 Variable 2 Variable name Data type Current value XOR_EN BOOL TRUE XOR_In1 BYTE 255 XOR_In2 WORD 256 Out1 WORD 511...

Page 215: ...he data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL...

Page 216: ...is conducted as below If the data type of an input variable is BOOL the data types of all input and output variables are required to be BOOL Otherwise an error will occur in the compiling of the softw...

Page 217: ...type Current value XORN_EN BOOL TRUE XORN _In1 BYTE 10 XORN _In2 BYTE 50 Out1 BYTE 199 Variable 2 Variable name Data type Current value XORN _EN BOOL TRUE XORN _In1 BYTE 255 XORN _In2 WORD 256 Out1 W...

Page 218: ...s on the data type of the variable that the input parameter is connected to Out Result Output Result from shifting all bits of the original data by the number of bits specified by Num to the left Depe...

Page 219: ...0 Programming Example The data types of SHL_In and SHL_Num are UINT and USINT respectively and their values are 300 and 3 respectively The data type of Out1 is BYTE and the value of Out1 is 2400 when...

Page 220: ...data type of the variable that the input parameter is connected to Out Result Output Result from shifting all bits of the original data by the number of bits specified by Num to the right Depends on t...

Page 221: ...as In Programming Example The data types of SHR_In and SHR_Num are UINT and USINT respectively and their values are 300 and 3 respectively The data type of Out1 is UINT and the value of Out1 is 37 whe...

Page 222: ...pe of the variable that the input parameter is connected to Out Result Output Result from rotating all bits of the original data by the number of bits specified by Num to the left Depends on the data...

Page 223: ...left is equal to the value of Num MOD In when the value of Num is greater than the number of bits of the value of In For example if the data type of In is BYTE the value of out when Num USINT 1 is th...

Page 224: ...ype of the variable that the input parameter is connected to Out Result Output Result from rotating all bits of the original data by the number of bits specified by Num to the right Depends on the dat...

Page 225: ...ght is equal to the value of Num MOD In when the value of Num is greater than the number of bits of the value of In For example if the data type of In is BYTE the value of out when Num USINT 1 is the...

Page 226: ...input parameter is connected to Out Comparison result Output The largest value of In1 InN Depends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer...

Page 227: ...ble must contain the length of all input parameters Otherwise an error will occur during the compiling of the software Programming Example The data types of MAX_In1 MAX_In2 and MAX_In3 are INT UINT an...

Page 228: ...epends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DIN...

Page 229: ...cur during the compiling of the software Programming Example The data types of MIN_In1 MIN_In2 and MIN_In3 are INT UINT and DINT respectively The data type of Out1 is DINT If the values of MIN_In1 MIN...

Page 230: ...ut parameter is connected to Out Selection result Output Selection result Depends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time...

Page 231: ...ed to omit The length of the data type of the output variable must contain the length of the variables that the input parameters In0 and In1 connect Otherwise an error will occur during the compiling...

Page 232: ...data type of the variable that the input parameter is connected to Out Selection result Output Selection result Depends on the data type of the variable that the output parameter is connected to Boole...

Page 233: ...iables are omitted But the output variable is allowed to omit The length of the data type of the output variable must contain the length of the variables that the input parameters In0 InN connect Othe...

Page 234: ...alue Input Maximum value Depends on the data type of the variable that the input parameter is connected to Out Processing result Output Processing result Depends on the data type of the variable that...

Page 235: ...input variables are omitted But the output variable is allowed to omit Programming Example The data types of LIMIT_MN LIMIT_In and LIMIT_MX are UINT UINT and DINT and the data type of Out1 is DINT Wh...

Page 236: ...ta type of the variable that the input parameter is connected to MX Maximum value Input Maximum value Depends on the data type of the variable that the input parameter is connected to Out Processing r...

Page 237: ...ions for Correct Use The input variables are not allowed to omit An error will occur during the compiling of the software if the input variables are omitted But the output variable is allowed to omit...

Page 238: ...Chapter 8 Logic Instructions 8 151 8_ Variable name Data type Current value BAND_In REAL 10 BAND_MX REAL 100 Out1 LREAL 40 The program 1 BAND EN ENO MN Out MX In BAND_EN BAND_MN BAND_MX BAND_In Out1...

Page 239: ...epends on the data type of the variable that the input parameter is connected to BiasP Positive bias value Input Positive bias Depends on the data type of the variable that the input parameter is conn...

Page 240: ...the compiling of the software Precautions for Correct Use The input variables are not allowed to omit An error will occur during the compiling of the software if the input variables are omitted But t...

Page 241: ...Motion Controller Operation Manual 8 154 _8 Variable name Data type Current value ZONE_In INT 10 ZONE_BiasP DINT 100 Out1 DINT 40 The program 1 ZONE EN ENO BiasN Ou t BiasP In ZONE_EN ZONE_BiN ZONE_Bi...

Page 242: ...ult Output Conversion result Depends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT...

Page 243: ...at Boolean data are converted into Integer data is as the following table shows Boolean Integer USINT UINT UDINT ULINT SINT INT DINT LINT FALSE 0 0 0 0 0 0 0 0 TRUE 1 1 1 1 1 1 1 1 BOOL to Real number...

Page 244: ...ns The rule that Boolean data are converted into String data is as the following table shows The string format is to be confirmed Boolean String STRING FALSE FALSE TRUE TRUE Precautions for Correct Us...

Page 245: ...Output Conversion result Depends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UIN...

Page 246: ...the greater length data by writing the values of all bits of the less length data to corresponding bits of the greater length data and setting the values of the remaining bits of the greater length da...

Page 247: ...FFFF DWORD BYTE 16 _ 00 16 _ FF 16 00 16 FF WORD 16 _0000 16 _FFFF 16 0000 16 FFFF LWORD 16 0000_0000 16 FFFF_FFFF 16 0000_0000_0000_0000 16 0000_0000_FFFF_FFFF LWORD BYTE 16 _ _ _ 00 16 _ _ _ FF 16 0...

Page 248: ...Out In Out In Out BYTE USINT 16 00 16 FF 0 255 UINT 16 00 16 FF 0 255 UDINT 16 00 16 FF 0 255 ULINT 16 00 16 FF 0 255 SINT 16 00 16 7F 0 127 16 80 16 FF 128 1 INT 16 00 16 FF 0 255 DINT 16 00 16 FF 0...

Page 249: ...ing data can be converted to the Real number data And some instructions are shown below The Bit string data are converted into the Real number data as the following table shows Data type The value of...

Page 250: ...16 0000_0000 16 FFFF_FFFF T 0ns T 4s294ms967us295ns DATE 16 0000_0000 16 FFFF_FFFF D 1970 1 1 D 2016 2 7 TOD 16 0000_0000 16 0526_5BFF TOD 0 0 0 TOD 23 59 59 999 16 0526_5C00 16 0A4C_B7FF 16 FC57_9C00...

Page 251: ...he Bit string data are converted to the String data the length of the output String data must meet the length of the input parameter For example during the use of the BYTE_TO_STRING instruction the ou...

Page 252: ...result Depends on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT...

Page 253: ...e converted to the Bit string data And some instructions are shown below The rule for the conversion of the Integer data into the Bit string data is the same as that for the conversion of the Bit stri...

Page 254: ...000 16 FFFF DWORD 16 0000 16 FFFF 16 0000_0000 16 0000_FFFF LWORD 16 0000 16 FFFF 16 0000_0000_0000_0000 16 0000_0000_0000_FFFF DINT BYTE 16 _ 00 16 _ FF 16 00 16 FF WORD 16 _0000 16 _FFFF 16 0000 16...

Page 255: ...to the value of Out In Out In Out USINT USINT 16 00 16 FF 0 255 UINT 16 00 16 FF 0 255 UDINT 16 00 16 FF 0 255 ULINT 16 00 16 FF 0 255 SINT 16 00 16 7F 0 127 16 80 16 FF 128 1 INT 16 00 16 FF 0 255 D...

Page 256: ...16 00 16 FF 0 255 SINT 16 00 16 7F 0 127 16 80 16 FF 128 1 INT 16 00 16 FF 0 255 DINT 16 00 16 FF 0 255 LINT 16 00 16 FF 0 255 INT USINT 16 00 16 FF 0 255 UINT 16 0000 16 FFFF 0 65535 UDINT 16 0000 1...

Page 257: ...27 16 _ _ _ 80 16 _ _ _ FF 128 1 INT 16 _ _ _0000 16 _ _ _7FFF 0 32767 16 _ _ _8000 16 _ _ _FFFF 32768 1 DINT 16 _ _0000_0000 16 _ _7FFF_FFFF 0 2147483647 16 _ _8000_0000 16 _ _FFFF_FFFF 2147483648 1...

Page 258: ...9223372036854775808 9223372036854775807 9 22337203685477e 18 9 22337203685477e 18 Integer to Time or Date The Integer data are converted into the Time or Date data and some instructions are shown as b...

Page 259: ...2 7 6 28 15 SINT TIME 16 00 16 FF T 0ns T 255ns DATE 16 00 16 FF D 1970 1 1 TOD 16 00 16 FF TOD 0 0 0 TOD 0 0 0 255 DT 16 00 16 FF DT 1970 1 1 0 0 0 DT 1970 1 1 0 4 15 INT TIME 16 0000 16 FFFF T 0ns...

Page 260: ...5 ULINT STRING 0 18446744073709551615 0 18446744073709551615 SINT STRING 128 127 128 127 INT STRING 32768 32767 32768 32767 DINT STRING 2147483648 2147483647 2147483648 2147483647 LINT STRING 92233720...

Page 261: ...T REAL LREAL TIME DATE TOD DT STRING In Out The data type of Out must be the same as of the instruction name Note The symbol indicates that the parameter is allowed to connect to the variable or const...

Page 262: ...ases for the value of a real number 1 If the number of input digits of a real number exceeds what is allowed the result will be an unsure value Please set a limit in the user program in order to get a...

Page 263: ...nd integer to time or date conversion Real Number to String Real numbers can be converted to strings And some instructions are shown below The rule for the real number to string conversion is the same...

Page 264: ...The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type Function Explanation Time and Date to Bool Bit String Integer Real Number and String The rule...

Page 265: ...tion Manual 8 178 _8 ms millisecond Precautions for Correct Use The input variable is not allowed to omit An error will occur during the compiling of the software if the input variable is omitted But...

Page 266: ...ate String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE TOD DT STRING In Out The data type of Out must be the same as of the instruction name Note The symb...

Page 267: ...amples are shown in the following table Input value Output result Data type Output value 123 REAL 123 123 123 REAL 123 123 1 23e 5 REAL 1 23e 5 M123 123 REAL The conversion is not allowed and the orig...

Page 268: ...same as that for the string to integer conversion Precautions for Correct Use The input variable is not allowed to omit An error will occur during the compiling of the software if the input variable...

Page 269: ...NT 0 When Execute changes from FALSE to TRUE SubIndex The subindex of a parameter to be read USINT 0 When Execute changes from FALSE to TRUE Output Parameters Parameter name Function Data type Valid r...

Page 270: ...open ReadPm_C_Ex BOOL FALSE ReadPm_C_Done BOOL ReadPm_C_Bsy BOOL ReadPm_C_Act BOOL ReadPm_C_Err BOOL ReadPm_C_ErrID WORD ReadPm_C_DaTy USINT ReadPm_C_Dat UDINT 2 For the index and subindex of other sl...

Page 271: ...from FALSE to TRUE Error changes from FALSE to TRUE the values of Datatype and Data are cleared to 0 and ErrorID shows corresponding error codes As Execute changes from TRUE to FALSE Error changes fr...

Page 272: ...Ty ReadPm_C1_Done ReadPm_C1_Dat 0 16 2137 Axis1 ReadPm_C1_Ex DMC_ReadParameter_CANopen Axis Done ReadPm_C1 Execute Busy Active Error ErrorID DataType Data Index SubIndex DMC_WriteParameter_CANopen Axi...

Page 273: ...tion is completed WritePm_C_Done changes to TRUE That is 1000 is written as the content of the servo slave parameter P1 55 The maximum speed of the servo is limited to 1000rpm The second DMC_ReadParam...

Page 274: ...Data The content value of the parameter which is set UDINT Notes 1 The value of DataType must indicate the data type of the parameter which is set If the filled value is incorrect an error will occur...

Page 275: ...en Done changes to TRUE Busy and Active change to FALSE When Execute changes from TRUE to FALSE Done changes from TRUE to FALSE Case 2 Before DMC_WriteParameter_CANopen is executed the input parameter...

Page 276: ...t UDINT 1000 Timing chart 2 1 ReadPm_C1_Bsy ReadPm_C1_Act ReadPm_C1_Err ReadPm_C1_ErrID ReadPm_C1_DaTy ReadPm_C1_Done ReadPm_C1_Dat 0 16 2137 Axis1 ReadPm_C1_Ex DMC_ReadParameter_CANopen Axis Done Rea...

Page 277: ...ritePm_C_Done changes to TRUE That is the content of the servo slave parameter P1 55 which is written is 1000 The maximum speed of the servo is limited to 1000rpm When WritePm_C_Done changes from FALS...

Page 278: ...d_Length Read_FunCode Timeout SlaveIP_segment1 SlaveIP_segment2 SlaveIP_segment3 SlaveIP_segment4 Input Parameters Parameter name Function Data type Valid range Default Validation timing Execute The i...

Page 279: ...ddress Specify the starting register of the master where data to be sent are stored UINT MW0 MW32 767 QW0 QW63 When Execute changes from FALSE to TRUE Write_Buffer_Address _Offset Set the offset of th...

Page 280: ...esponse The slave timeout occurs if the slave does not respond to the master request within the set time Unit ms UINT 0 65535 0 When Execute changes from FALSE to TRUE Note 1 The input parameters Slav...

Page 281: ...ecute Done Error ErrorID Case 1 Case 2 Case 1 When Execute changes from FALSE to TRUE Done becomes TRUE and the configuration of parameters is successful When Execute changes from TRUE to FALSE Done c...

Page 282: ...t registers of the slave are read and written and the offset value is n which is not equal to 0 the PLC will begin to read or write Read_Length and Write_Length bits of data by offsetting n bits backw...

Page 283: ...Parameters Parameter name Function Data type Valid range Valid TRUE when the outputs of the instruction are valid BOOL TRUE FALSE LinkOpened TRUE when the MODBUS TCP data exchange is enabled BOOL TRU...

Page 284: ...on controller at the moment PhysicalLinkError changes to TRUE if Open changes to TRUE PhysicalLinkError does not change to FALSE if Open changes to FALSE and Valid and PhysicalLinkError changes to FAL...

Page 285: ...s Parameter name Function Data type Valid range Valid TRUE when the outputs of the instruction are valid BOOL TRUE FALSE ETH_Error TRUE when an error occurs in the MODBUS TCP data exchange BOOL TRUE F...

Page 286: ...Enable changes to FALSE Case 3 When Enable changes to TRUE Valid changes to TRUE ETH_Error changes to TRUE and ETH_ErrorID shows corresponding error code when the MODBUS TCP data sending fails or time...

Page 287: ...ink is re performed when the TCP link is not disabled Disable the current link before re establishing the link 8 14 2 4 MODBUS TCP Data Exchange Example Programming Example 1 Example of reading and wr...

Page 288: ...NT 16 1064 Config0_RLTH UINT 10 Config0_R_Code USINT 0 Config0_T UINT 1000 Config0_Done BOOL Config0_Err BOOL Config0_ErrID WORD ETH_Link_Manage0 ETH_Link_Manage MA_En BOOL MA_Open BOOL MA_Valid BOOL...

Page 289: ...ysicalLinkError ETH_Link_Status Enable ETH_Link_Status0 LinkNum Valid ETH_Error ETH_ErrorID Error ErrorID MA_En MA_Open MA_Valid MA_PhyErr MA_LinkOpen STA_En 1 STA_ErrID STA_Err STA_Valid STA_ETH_ErrI...

Page 290: ...to Y0 Y7 in DVP12SE then reads the values in Y20 Y27 in DVP12SE and stores the read values in MX2 0 MX2 7 Variable table and program Variable name Address Data type Initial value ETH_Link_Config1 ETH_...

Page 291: ...value Config1_Done BOOL Config1_Err BOOL Config1_ErrID WORD ETH_Link_Manage1 ETH_Link_Manage MA1_En BOOL MA1_Open BOOL MA1_Valid BOOL MA1_LinkOpen BOOL MA1_PhyErr BOOL ETH_Link_Status1 ETH_Link_Statu...

Page 292: ..._Link_Manage Enable Valid ETH_Link_Manage1 Open LinkOpened PhysicalLinkError ETH_Link_Status Enable ETH_Link_Status1 LinkNum Valid ETH_Error ETH_ErrorID Error ErrorID MA1_En MA1_Open MA1_Valid MA1_Phy...

Page 293: ...ent communication status can be watched The corresponding relationships between the motion controller and DVP12SE are shown in the following table Devices in the motion controller Bit devices Y in DVP...

Page 294: ...me is the link duration unit seconds If there is no data exchange between the master and slave within the time specified by LinkKeeptime the controller will disconnect the link to the slave automatica...

Page 295: ...tion will not be written The new parameter value of the instruction will be written only after Execute of the instruction is retriggered 3 ETH_Link_Config_Ex and ETH_Link_Config has no relation in the...

Page 296: ...0s Output Parameters Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Output Update Timing Parameter Name Timing for changing to TRUE...

Page 297: ...instruction is executed Output Parameters Parameter name Function Data type Valid range Valid TRUE when the instruction output is valid BOOL TRUE FALSE SocketReady TRUE when enabling the Socket is suc...

Page 298: ...FALSE to TRUE Valid changes to TRUE If there is a problem with 15MC s LAN2 port connection at the moment PhysicalLinkError will change to TRUE as Enable changes to TRUE As EnableSocket changes to TRUE...

Page 299: ...INT 1 8 0 When Execute changes from FALSE to TRUE Protocol_Type Socket connection mode 0 Socket UDP 1 Socket TCP USINT 0 Socket UDP 1 Socket TCP 0 When Execute changes from FALSE to TRUE RemoteIP_segm...

Page 300: ...transmission for the built link within the period of time the controller will automatically abort the connection Output Parameters Parameter name Function Data type Valid range Done TRUE when the con...

Page 301: ...r values will not be written unless you retrigger the input Execute after instruction parameter values are modified 2 If you retrigger the instruction to execute when current link is not disconnected...

Page 302: ...ntroller will try to make connection with other node or wait for other node to send out the link request 2 When OpenMode is TRUE the controller is in Client mode After ETH_Socket_Open instruction is e...

Page 303: ...g of parameters is successful One cycle later Done changes to TRUE and meanwhile Busy changes to FALSE When Execute changes from TRUE to FALSE Done changes from TRUE to FALSE Case 2 When Execute chang...

Page 304: ...number of the Socket USINT 1 8 0 When Execute changes from FALSE to TRUE CyclicRun Set whether to cyclically send data or not TRUE Cyclic sending FALSE Only one time data sending BOOL TRUE or FALSE FA...

Page 305: ...error code WORD Output Update Timing Parameter Name Timing for changing to TRUE Timing for changing to FALSE Done When the instruction execution is finished When Execute changes from TRUE to FALSE Sen...

Page 306: ...o FALSE the output will keep unchanged When Execute changes from TRUE to FALSE Aborted changes to FALSE Case 4 When Execute changes from FALSE to TRUE Busy and Active change to TRUE When an error occu...

Page 307: ...value will not be effective You have to use the input parameter Abort to abort the instruction first then re execute the instruction and then the new input parameter value will take effect 4 The value...

Page 308: ...te changes from FALSE to TRUE BOOL TRUE or FALSE FALSE Abort Abort the instruction execution BOOL TRUE or FALSE FALSE SocketNum Specify the number of the Socket USINT 1 8 0 When Execute changes from F...

Page 309: ...ALSE Aborted TRUE when the instruction execution is aborted BOOL TRUE FALSE Error TRUE when an error occurs in the instruction execution BOOL TRUE FALSE ErrorID Contains error codes when an error occu...

Page 310: ...ata reaches or exceeds the set length Done changes to FALSE when Execute changes from TRUE to FALSE Case 2 If the value of DataSaveMode is set to 1 Busy and Active change to TRUE as Execute changes fr...

Page 311: ...de is 0 and DataSaveMode is 1 the instruction has the received data stored in the registers starting from the start register specified by Receive_Buffer_Address in the mode of covering Every time the...

Page 312: ...te Timing Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Error TRU...

Page 313: ...Busy changes to FALSE When Execute changes from TRUE to FALSE Done changes from TRUE to FALSE Case 2 When Execute changes from FALSE to TRUE Error changes to TRUE and ErrorID shows corresponding error...

Page 314: ...et_Status instruction Output Update Timing Parameter name Function Data type Valid range Valid TRUE when Socket data sending and receiving are both completed BOOL TRUE FALSE Connected TRUE when the co...

Page 315: ...ning changes from FALSE to TRUE Send When a piece of message sending is completed When Enable changes from TRUE to FALSE When Sending changes from TRUE to FALSE Opening When the controller starts to b...

Page 316: ...nges from FALSE to TRUE Valid changes to TRUE When an error occurs in the instruction execution Error changes to TRUE and ErrorID shows error codes and Valid keeps the state of TRUE When Enable change...

Page 317: ..._Manage M_En BOOL M_SEN BOOL M_Valid BOOL M_SR BOOL M_LErr BOOL ETH_Socket_Config0 ETH_Socket_Config CON_Ex BOOL CON_PType USINT 1 CON_IP1 USINT 192 CON_IP2 USINT 168 CON_IP3 USINT 1 CON_IP4 USINT 10...

Page 318: ...t_Receive0 ETH_Socket_Receive R_Ex BOOL R_Abort BOOL R_Mode USINT 0 R_SMode USINT 1 R_BFA MB600 USINT R_LTH UINT 100 R_Done BOOL R_RECD BOOL R_RING BOOL R_RLTH BOOL R_Bsy BOOL R_Act BOOL R_Abt BOOL R_...

Page 319: ...e RemoteIP_segment1 Local_port LinkKeeptime RemoteIP_segment2 RemoteIP_segment3 RemoteIP_segment4 Remote_port CON_IP1 CON_Ex CON PType _ 1 CON_RP CON_IP2 CON_IP4 CON_IP3 CON_LP CON_KT CON_Done CON_Err...

Page 320: ...A_RING STA_ErrID Operation steps and data exchange description 1 The variables S_BFA and R_BFA are respectively bound to the addresses MB200 and MB600 After the program compiling is successful and dow...

Page 321: ...cyclically send 17 bytes of data in the registers starting from MB200 to the target host 5 Execute ETH_Socket_Receive to receive the data that the target host returns or sends to the controller The co...

Page 322: ...rameters Parameter name Function Data type Valid range Valid TRUE when the outputs of the instruction are valid BOOL TRUE FALSE LinkOpened TRUE when 485 communication is enabled BOOL TRUE FALSE Output...

Page 323: ...ake effect and then the operation of other parameter of the instruction will be valid 2 In the case that Enable is TRUE the RS485 communication is switched on as Open changes to TRUE The RS485 communi...

Page 324: ...m Specify the number of the Link UINT 1 24 The variable value must be set When Execute changes from FALSE to TRUE EnableLink Enable or disable the Link BOOL TRUE or FALSE FALSE When Execute changes fr...

Page 325: ...egister of the slave is read The setting value 1 means the offset is 1 bit if the bit register of the slave is read USINT 0 255 0 When Execute changes from FALSE to TRUE Read_Destinati on_Address Set...

Page 326: ...values of Write_Length and Read_Length can not be 0 at the same time When ObjType is 1 it means to read and write the bit register of the slave The range of Write_Length and Read_Length is 0 256 and t...

Page 327: ...arameter Noncyclic The communication mode is the cyclic communication mode if Noncyclic is set to FALSE The communication mode is the non cyclic communication mode if Noncyclic is set to TRUE a Cyclic...

Page 328: ...truction are valid BOOL TRUE FALSE RS485_Link_Error TRUE when an error occurs in the corresponding link It is valid when Error is FALSE BOOL TRUE FALSE RS485_Link_ErrorID Outputs communication error c...

Page 329: ...n error in the communication as Enable changes from FALSE to TRUE Valid changes from FALSE to TRUE and after a while RS485_Link_Error changes to TRUE Case 3 If there is an error in the instruction inp...

Page 330: ...Logic Instructions 8 243 8_ Precaution 1 The state of RS485_Link_Error will not be refreshed and will be invalid when Enable is TRUE and Error is TRUE 2 The input value of LinkNum can be a number or...

Page 331: ...al value Mng RS485_Link_Manage Mng_En BOOL TRUE Mng_Open BOOL FALSE Mng_Valid BOOL Mng_LOpen BOOL Confg RS485_Link_Config Confg _Ex BOOL FALSE Confg _LN UINT 1 Confg _EL BOOL TRUE Confg _Ncyc BOOL FAL...

Page 332: ...ve Then the values in Y0 Y30 of the slave are read and stored in the 31 bit devices QX0 1 QX3 7 in the master as shown in the following variable table 2 Variable table 2 Name Address Data type Initial...

Page 333: ...de17 Write_Buffer_Address Write_Destination_Address Write_Length Read_Buffer_Address Write_Buffer_Address_Offset Read_Buffer_Address_Offset Read_Destination_Address Read_Length Read_FunCode Timeout Co...

Page 334: ...TRUE BOOL TRUE or FALSE FALSE When Execute changes from FALSE to TRUE CyclicRun Communication mode setting for the instruction FALSE Non cyclic TRUE Cyclic BOOL TRUE or FALSE FALSE When Execute chang...

Page 335: ...LSE Busy TRUE when the communication proceeds BOOL TRUE FALSE Aborted TRUE when current execution of the instruction is aborted BOOL TRUE FALSE Active TRUE when the port is controlled by the instructi...

Page 336: ...SE Active When Execute changes from FALSE to TRUE When Execute changes from TRUE to FALSE When current instruction is aborted by another instruction in the multi cycle state When Done changes to TRUE...

Page 337: ...he data sending parameters are configured when Execute changes from FALSE to TRUE Busy changes to TRUE After a while Newcycle changes between TRUE and FALSE alternately When Abort changes to TRUE Busy...

Page 338: ...unction Precaution 1 RS485_RS does not add the checksum automatically In ASCll mode the data sent out are required to be the ASCll message which has been converted into 2 The total length of sent data...

Page 339: ...will take effect again c When Execute of RS485_RS instruction changes from FALSE to TRUE Enable of RS485_Link_Manage changes to TRUE Open of the instruction can control the functions of 485 link and...

Page 340: ...variable table 1 the data in MB4000 MB4019 are 30 31 31 30 31 35 30 30 30 30 30 31 30 32 30 30 30 38 43 46 The message data on the bus 3A 30 31 31 30 31 35 30 30 30 30 30 31 30 32 30 30 30 38 43 46 0D...

Page 341: ...the data in MB4000 MB4022 are 3A 30 31 31 30 31 35 30 30 30 30 30 31 30 32 30 30 30 38 43 46 0D 0A The message data on the bus 3A 30 31 31 30 31 35 30 30 30 30 30 31 30 32 30 30 30 38 43 46 0D 0A Var...

Page 342: ...ffer_Address Receive_Length Add_STX_ETX ETX1 ETX2 STX Timeout Done Busy Aborted NewCycle Received Receive_TimeOut Receive_LengthOverMAX Receive_ActulLength Error ErrorID RS_RAL RS_RLOM RS_RTO RS_Rec R...

Page 343: ...ort of the controller It is valid no matter whether the controller serves as a master or a slave Unit ms UINT 0 65535 0 When Execute changes to TRUE Output Parameters Parameter name Function Data type...

Page 344: ...TRUE to FALSE Function The RS485_SetDelayTime instruction is used to set the response delay time of the controller RS485 communication port The setting time is valid when the RS485 communication port...

Page 345: ...32 communication is switched on or off BOOL TRUE or FALSE FALSE When Enable changes from FALSE to TRUE Output Parameters Parameter name Function Data type Valid range Valid TRUE when the outputs of th...

Page 346: ...parameters of the instruction will be invalid When Enable changes to TRUE the instruction takes effect and then the operation of other parameter of the instruction will be valid 2 In the case that En...

Page 347: ...from FALSE to TRUE BOOL TRUE or FALSE FALSE LinkNum Specify the number of the Link UINT 1 24 The variable value must be set When Execute changes from FALSE to TRUE EnableLink Enable or disable the Lin...

Page 348: ...e changes from FALSE to TRUE Read_Buffer_Address _Offset Set the offset of the starting register of the master receiving data The setting value 1 means the offset is 1 word if the word register of the...

Page 349: ...iguration of parameters is correct and Execute changes from FALSE to TRUE Done changes from FALSE to TRUE Case 2 When the configuration of parameters is incorrect and Execute changes from FALSE to TRU...

Page 350: ...r off are all invalidated The ETH_Link_Config instruction must be re executed if the configuration before the power off is needed to use 8 When the bit registers of the slave are read the value of Rea...

Page 351: ...e outputs of the instruction are valid BOOL TRUE FALSE RS232_Link_Error TRUE when an error occurs in the corresponding link It is valid when Error is FALSE BOOL TRUE FALSE RS232_Link_ErrorID Outputs c...

Page 352: ...error both in the communication and instruction inputs Case 2 If there is an error in the communication as Enable changes from FALSE to TRUE Valid changes from FALSE to TRUE and after a while RS232_Li...

Page 353: ...or watching the communication state of the corresponding link The firmware of V1 01 and above supports the function Precaution 1 The state of RS232_Link_Error will not be refreshed and will be invalid...

Page 354: ...ue Mng RS232_Link_Manage Mng_En BOOL TRUE Mng_Open BOOL FALSE Mng_Valid BOOL Mng_LOpen BOOL Confg RS232_Link_Config Confg _Ex BOOL FALSE Confg _LN UINT 1 Confg _EL BOOL TRUE Confg _Ncyc BOOL FALSE Con...

Page 355: ...Y30 in the slave Then the values in Y0 Y30 of the slave are read and stored in the 31 bit devices QX0 1 QX3 7 in the master as shown in the following variable table 2 Variable table 2 Name Address Da...

Page 356: ...Buffer_Address Write_Destination_Address Write_Length Read_Buffer_Address Write_Buffer_Address_Offset Read_Buffer_Address_Offset Read_Destination_Address Read_Length Read_FunCode TimeOut Confg_Ncyc Co...

Page 357: ...es from FALSE to TRUE BOOL TRUE or FALSE FALSE Abort The free protocol communication is aborted when Abort changes to TRUE BOOL TRUE or FALSE FALSE When Execute changes from FALSE to TRUE CyclicRun Co...

Page 358: ...nction Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Busy TRUE when the communication proceeds BOOL TRUE FALSE Aborted TRUE when current execution of the...

Page 359: ...from FALSE to TRUE When Execute changes from TRUE to FALSE When current instruction is aborted by another instruction in the multi cycle state When Done changes to TRUE in the one single cycle state N...

Page 360: ...rnately When Abort changes to TRUE Busy changes to FALSE and Aborted to TRUE When Abort changes to FALSE Aborted remains TRUE Aborted remains TRUE when Abort changes to TRUE again Aborted changes to F...

Page 361: ...f messages 3 Add_STX_ET sets if the header and footer codes are added or not in the sent message The function is only enabled when the header and footer codes of the sent message are identical to thos...

Page 362: ...control the functions of 232 link and free protocol communication d If there are several RS232_RS instructions in the program only one of them which is triggered the last time will take effect e For t...

Page 363: ...red based on variable table 1 the data in MB4000 MB4019 are 30 31 31 30 31 35 30 30 30 30 30 31 30 32 30 30 30 38 43 46 The message data on the bus 3A 30 31 31 30 31 35 30 30 30 30 30 31 30 32 30 30 3...

Page 364: ...n MB4000 MB4022 are 3A 30 31 31 30 31 35 30 30 30 30 30 31 30 32 30 30 30 38 43 46 0D 0A The message data on the bus 3A 30 31 31 30 31 35 30 30 30 30 30 31 30 32 30 30 30 38 43 46 0D 0A Variable table...

Page 365: ...Receive_Buffer_Address Receive_Length Add_STX_ETX ETX1 ETX2 STX Timeout Done Busy Aborted NewCycle Received Receive_TimeOut Receive_LengthOverMAX Receive_ActulLength Error ErrorID RS_RAL RS_RLOM RS_R...

Page 366: ...controller It is valid no matter whether the controller serves as a master or a slave Unit ms UINT 0 65535 0 When Execute changes to TRUE Output Parameters Parameter name Function Data type Valid rang...

Page 367: ...hanges from TRUE to FALSE Function The RS232_SetDelayTime instruction is used to set the response delay time of the controller RS232 communication port The setting time is valid when the RS232 communi...

Page 368: ...imum number of joined parameters is 8 and the minimum number is 2 N 2 8 Depends on the data type of the variable that the input parameter is connected to Out Result of joining Output String resulted f...

Page 369: ...of the software if the input variables are omitted But the output variable is allowed to omit Programming Example The data types of CONCAT_In1 CONCAT_In2 and Out1 are strings and the values of CONCAT_...

Page 370: ...of characters to delete Input Number of characters to delete 0 maximum length of the string P Deletion start position Input Deletion start position 1 maximum length of the string Out Deletion result...

Page 371: ...during the compiling of the software if the input variables are omitted But the output variable is allowed to omit Programming Example DELETE_In is AaBbCcDd DELETE_L 2 and DELETE_P 3 When DELETE_EN i...

Page 372: ...rt Depends on the data type of the variable that the input parameter is connected to P Insertion start position Input Insertion start position 0 maximum length of the string Out Insertion result Outpu...

Page 373: ...riables are not allowed to omit An error will occur during the compiling of the software if the input variables are omitted But the output variable is allowed to omit Programming Example Insert_In1 is...

Page 374: ...connected to L Number of characters to get Input Number of characters to get 0 maximum number of characters Out Extraction result Output Extraction result Depends on the data type of the variable tha...

Page 375: ...it Programming Example When the LEFT_In string is AaBbCcDd LEFT_L 2 and LEFT_EN is TRUE Out1 is Aa as shown in the following table 1 When the RIGHT_In string is AaBbCcDd RIGHT_L 2 and RIGHT_EN is TRUE...

Page 376: ...characters to extract Input Number of characters to extract 0 maximum number of characters P Extraction start position Input Extraction start position 1 maximum number of characters Out Extraction res...

Page 377: ...l occur during the compiling of the software if the input variables are omitted But the output variable is allowed to omit Programming Example The MID_In string is AaBbCcDd MID_L 2 and MID_LP 3 When M...

Page 378: ...variable that the input parameter is connected to L Number of characters Input Number of characters to delete 0 maximum number of characters P Replacement start position Input Replacement start posit...

Page 379: ...e omitted But the output variable is allowed to omit Programming Example The REPLACE_In1 string is AaBbCcDd the REPLACE_In2 string is DELTA REPLACE_L 2 and REPLACE_LP 3 When REPLACE_EN is TRUE Out1 is...

Page 380: ...L TIME DATE TOD DT STRING In Out Note The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type Function Explanation The LEN instruction finds the numb...

Page 381: ...s on the data type of the variable that the output parameter is connected to Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LIN...

Page 382: ...ables are omitted But the output variable is allowed to omit Programming Example The FIND_In1 string is AaBbCcDd and the FIND_In2 string is Cc As FIND_EN is TRUE the value of Out1 is 5 The variable ta...

Page 383: ...dule 0 7 The position of the first module at the left side of the motion controller is 100 and the position of the first module at the right side of the motion controller is 0 The variable value must...

Page 384: ...nstruction execution or the input parameters for the instruction are illegal When Execute changes from TRUE to FALSE Output Update Timing Chart Execute Done Busy Active Error ErrorID Case 1 DesPtr Cas...

Page 385: ...number For example if DVP04AD S DVP16SP11T and DVP04DA S are connected to the right side of the motion controller one after another the StationID value of DVP04AD S is 0 and the StationID value of DVP...

Page 386: ...one FRM1_ErrID FRM1_Err FRM1_Act FRM1_Bsy DVP 04AD is connected to the right side of the motion controller When FRM1_Ex changes from FALSE to TRUE and FRM1_Bsy and FRM1_Act change to TRUE simultaneous...

Page 387: ...7 The position of the first module at the left side of the motion controller is 100 and the position of the first module at the right side of the motion controller is 0 The variable value must be set...

Page 388: ...Error ErrorID Case 1 Case 2 Case 1 When Execute changes from FALSE to TRUE Busy and Active change to TRUE One period later Done changes to TRUE Meanwhile Busy and Active changes from TRUE to FALSE Aft...

Page 389: ...of DVP04DA S is 1 Programming Example 1 The variable table and program Variable name Data type Current value TO1 TO TO1_ID USINT 0 TO1_Ex BOOL FALSE TO1_CR UINT 2 TO1_Num USINT 1 TO1_DP INT 10 TO1_Do...

Page 390: ...TO2_Act TO2_Bsy DVP 04AD is connected to the right side of the motion controller When TO2_Ex changes from FALSE to TRUE TO2_Bsy and TO2_Act change to TRUE simultaneously and the TO instruction execut...

Page 391: ...ameter is allowed to connect to the variable or constant of the data type Function Explanation The ImmediateInput instruction is used for refreshing external input point status to IX0 0 IX0 7 and IX1...

Page 392: ...nt value ImdInput_EN BOOL FALSE ImdInput_Input INT 2 ImdInput_NM USINT 2 ImdInput_ENO BOOL ImmediateInput EN ENO Input Num ImdInput_EN ImdInput_NM ImdInput_Input ImdInput_ENO Program explanation When...

Page 393: ...ng current status of internal output point QX0 0 QX0 7 to external hardware output point If the ImmediateOutput instruction does not exist the controller refreshes internal output point status to exte...

Page 394: ...ImdOput_EN BOOL FALSE ImdOput_Oput INT 2 ImdOput_NM USINT 2 ImdOput_ENO BOOL ImmediateOutput EN ENO Output Num ImdOput_EN ImdOput_NM ImdOput_Oput ImdOput_ENO Program Explanation When the input variabl...

Page 395: ...FALSE FALSE Open Enable the function of the left side module device mapping BOOL TRUE or FALSE FALSE When Enable changes to TRUE Output Parameters Parameter name Function Data type Valid range Valid T...

Page 396: ...pen is TRUE The function of the left side module device mapping is turned OFF if Open is FALSE 3 The function of the left side module device mapping is disabled by default for one PLC The function of...

Page 397: ...on the left the CR registers of the AD module correspond to the mapping areas of the PLC as shown in the following table If the DVP04AD SL module is the second one on the left CR12 CR19 registers of...

Page 398: ...pping relationship can be calculated orderly in the same way DA module CR name CR No Mapping device in the PLC Channel 1 output value CR16 MW6250 Channel 2 output value CR17 MW6251 Channel 3 output va...

Page 399: ...Input Enable PID operation TRUE or FALSE SV Target value Input Target value 3 402823e 38 1 175495e 38 0 1 175495e 38 3 402823e 38 PV Current value Input Current value PID_MODE PID control mode Input...

Page 400: ...tant is less than 0 Tf will be 0 PID_EQ Reserved Input PID_DE Reserved Input PID_DIR PID forward reverse direction Input TRUE Positive direction E SV PV FALSE Negaitve direction E PV SV TRUE or FALSE...

Page 401: ...ration is conducted only when PID instruction is performed by PLC PID stands for Proportion Integral and Derivative The PID control is widely applied to mechanical equipment pneumatic equipment and el...

Page 402: ..._DBW range the present error will be brought into the PID operation again If PID_DE is TRUE that means using the the PV value to calculate the control value of the derivative and after the cross statu...

Page 403: ...8 PID Block Diagram PID Block Diagram Independent SV PV REVERSE X 1 PID_DIR E DEAD BAND ERR_DBW 0 1 PID P Kc_Kp Kc_Kp 0 0 0 PID I Ti_Ki Ti_Ki 0 0 0 0 0 0 PID D Td_Kd Tf Td_Kd BIAS PID_MAN 0 1 0 1 MOUT...

Page 404: ...t the proportional gain is 100 That is the error value is increased by a factor of one When the proportional gain is less than 100 the error value is decreased When the proportional gain is larger tha...

Page 405: ...low Thus the KP is not chosen Step 3 After the KP is set to 10 increase the KI For example the KI is set to 1 2 4 and 8 successively The KI should not be larger than the KP Then increase the KD For ex...

Page 406: ...environment in this sample is an oven The program example is as below The variable table and program 1 Global variable table Variable name Data type Current value M1 BOOL FALSE D_RUN BOOL G_In1 INT 2...

Page 407: ...Td_Kd Tf PID_EQ PID_DE PID_DIR ERR_DBW MV_MAX MV_MIN MOUT BIAS I_MV D_MODE D_RUN D_PV D_SV D_Kc D_MAN D_CYC D_Ki D_Tf D_Kd D_MAX D_DBW D_DIR D_I_MV D_MIN D_BIAS D_MOUT D_MV 2 REAL_TO_SINT EN ENO Out I...

Page 408: ...arameters which have been tuned to control the temperature is shown below e As the diagam above shows after the parameters are tuned automatically users can get a good temperature control result It on...

Page 409: ...on Manual 8 322 _8 f As the diagam above shows when the target temperature changes from 80 C to 100 C the parameters tuned previously still can be used to control the temperature Besides it does not t...

Page 410: ...TRUE within the width of output pulse TRUE or FALSE Boolean Bit string Integer Real number Time date String BOOL BYTE WORD DWORD LWORD USINT UINT UDINT ULINT SINT INT DINT LINT REAL LREAL TIME DATE T...

Page 411: ...lue GPWM0 GPWM GPWM0_En BOOL FALSE GPWM0_In1 INT 1000 GPWM0_In2 INT 2000 GPWM Enable GPWM0 In1 In2 1 Out QX0 0 GPWM0_En GPWM0_In2 GPWM0_In1 Timing Chart t 1000ms T 200 0ms QX0 0 GPWM_EN Additional Exp...

Page 412: ...T DINT LINT REAL LREAL TIME DATE TOD DT STRING Pointer To xx In Out Note 1 The symbol indicates that the parameter is allowed to connect to the variable of the data type 2 The data type xx of Pointer...

Page 413: ...8 326 _8 The variable table and program Variable name Address Data type ADR_EN BOOL ADR_In MW0 INT ADR1 POINTER TO INT OUT1 INT ADD_EN ADD_EN ADR_EN 1 ADR EN ENO In Out ADR1 ADR_IN MOVE EN ENO In Out...

Page 414: ...ype Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Error TRUE when there is an error in the execution of the instruction BOOL TRUE FALSE ErrorID Contains the error c...

Page 415: ...n cable of axis 1 is removed Programming Example 1 The variable table Variable name Data type Initial value CMSD CANmotion_SysDiag CMSD_EN BOOL CMSD_DT USINT 2 CMSD_Node ARRAY 1 32 OF BOOL 2 The progr...

Page 416: ...ype Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Error TRUE when there is an error in the execution of the instruction BOOL TRUE FALSE ErrorID Contains the error c...

Page 417: ...s for the instruction are illegal When the error is cleared Functions CANmotion_NodeDiag is used for the diagnosis of the state of the specified axis connected to Motion port The instruction can only...

Page 418: ...unction Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Error TRUE when there is an error in the execution of the instruction BOOL TRUE FALSE ErrorID Contai...

Page 419: ...the CANopen cable of slave 1 is removed Programming Example 1 The variable table Variable name Data type Initial value CSD CANOpen_SysDiag CSD_EN BOOL CSD_DT USINT 2 CSD_Node ARRAY 1 32 OF BOOL 2 The...

Page 420: ...TRUE when the instruction execution is completed BOOL TRUE FALSE Error TRUE when there is an error in the execution of the instruction BOOL TRUE FALSE ErrorID Contains the error code when an error oc...

Page 421: ...on or the input parameters for the instruction are illegal When the error is cleared Functions CANopen_NodeDiag is used for the diagnosis of the state of the specified slave connected to CANopen port...

Page 422: ...TRUE when there is an error in the execution of the instruction BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to section 12 2 WORD Operational TRUE when the master...

Page 423: ...nges to TRUE When Enable changes to FALSE Error When an error occurs in the instruction execution or the input parameters for the instruction are illegal When the error is cleared Functions CANopen_St...

Page 424: ...ng address Offset How many bits are offset Input Specify the offset value by regarding the bit0 of the variable that StartRegister points to as the reference 0 1023 Value Input value Input Input a spe...

Page 425: ...eds to use the ADR instruction to gain the address Programming Example The variable table and program Variable name Device address Data type Present value SetBOV_EN BOOL TRUE SetBOV _StartR MW0 UINT S...

Page 426: ...L LREAL TIME DATE TOD DT Pointer To XX StartR egister Offset GetBit Offset Value Note 1 The symbol indicates that the parameter is allowed to connect to the variable or constant of the data type 2 xx...

Page 427: ...fset parameter See the explanation below 1 When the value of SetBOV _StartR MW5 is 8 2 0000 1000 and SetBOV _Offset is 3 the value of GBOValue is TRUE which is the value of Bit3 of MW5 2 When the valu...

Page 428: ...can be got by ADR instruction Length The length of the data for CRC value calculation Input How many bytes of data are for the CRC value calculation by counting from the starting address of the data w...

Page 429: ...h The calculation result is put in the output parameter CRC16 The arrangement for the bytes of the CRC value is specified by OutOrder Precautions for Correct Use The input variables are not allowed to...

Page 430: ...arting address of the data with the unit byte 1 255 LRC The LRC value Output The LRC value of the specified data Depends on the data type of the variable that the output parameter is connected to Bool...

Page 431: ...e variable table and program Variable name Address Data type Current value LRC_EN BOOL TRUE IN_Data MB100 ARRAY 1 6 OF BYTE 16 01 16 03 16 10 16 01 16 00 16 02 IN_Length UINT 6 OUT_LRC WORD 16 E9 When...

Page 432: ...Chapter 8 Logic Instructions 8 345 8_ MEMO...

Page 433: ...9 1 9 Chapter 9 Introductions of Axis Parameters Table of Contents 9 1 Description of Axis Parameters 9 2...

Page 434: ...he unit of pitch UnitsPerRotation E g Users can fill mm millimeter or degree as a unit Linear Axis Linear Axis Model Note P1 Positive Limit P2 Negative Limit Servo Position Rotary Axis Rotary Axis Mod...

Page 435: ...ctronic gear ratio is used to set how many pulses the servo drive receives for one rotation that the servo motor runs The resolution of the servo motor is 1 280 000 pulses rotation Suppose the value o...

Page 436: ..._Abt BOOL Rel_Err BOOL Rel_ErrID WORD 15 Homing Mode Set the homing mode of the servo drive range 1 35 See appendix D for more details UINT 1 16 Speed 1 The speed from starting homing to finding the h...

Page 437: ...10 1 10 Motion Control Function Table of Contents 10 1 EN and ENO 10 2 10 2 Relation among Velocity Acceleration and Jerk 10 3 10 3 Introduction of BufferMode 10 6 10 4 The State Machine 10 32...

Page 438: ...structions are used 10 1 EN and ENO When one instruction which is used has EN and ENO and EN is FALSE 0 the function defined by instruction will not be performed and the output values of the instructi...

Page 439: ...t second2 Jerk Indicates the maximum change rate of the acceleration or deceleration in the motion of an axis with the unit of unit second3 The value of Jerk can be specified in the instruction and th...

Page 440: ...Acceleration Deceleration Unit second2 Velocity Unit second Motion type 1 0 2 10000 units second3 Acceleration is increased to 20000 units second2 Increasing The acceleration motion with an increasing...

Page 441: ...ased to 20000unit second2 Decreasing The deceleration motion with an increasing deceleration 6 15 18 0 Deceleration has been increased to 20000units second2 and it has been 20000units second2 during t...

Page 442: ...he target velocity of the current instruction 4 mcBlendingNext Blend with next The buffered instruction just starts to control the axis after the target position of the current instruction is reached...

Page 443: ...y direction of the buffered instruction is opposite to the current instruction Buffered Buffermode mcBuffered See two cases as below 1 When the direction of the buffered instruction is the same as tha...

Page 444: ...ur rent instruction execution is compl eted t he buffer ed i nstructio starts to control the axis Buffer ed instruction V Current instruction i s started Current instr uction The buffer ed instruction...

Page 445: ...star ted The buffered i nstruction starts to control the axi s when cur rent instr uction executi on is completed and the axi s vel ocity i s that of the pr evious i nstruction V1 V2 S1 S2 t Buffered...

Page 446: ...ruction starts to control th axis w hen the moti on dir ections of buffere instructi on and curr ent instruction are opposite and the velocity of cur rent instr uction i s decreased to 0 V1 V2 S1 S2 t...

Page 447: ...mcBlendingNext mcBlendingHigh 1 MC_MoveRelative mcAborting mcBuffered mcBlendingLow mcBlendingPrevious mcBlendingNext mcBlendingHigh 1 MC_MoveAdditive mcAborting mcBuffered mcBlendingLow mcBlendingPr...

Page 448: ...ut No Yes Done MC_GearIn Yes Yes InGear MC_GearOut No Yes Done MC_CombineAxes Yes Yes InSync Examples of Buffer Modes Example 1 The following example explains six buffer modes for the switch from the...

Page 449: ...e Busy Active Distance CommandAborted Error ErrorID Acceleration Deceleration Jerk BufferMode Velocity Axis1 True True Pwr_BM Pwr_Bsy Pwr_Act Pwr_Err Pwr_ErrID True Pwr_Sta MC_Power Axis Status Pwr En...

Page 450: ...to TRUE One period later Rel1_Abt and Rel2_Act change to TRUE and Rel1_Bsy and Rel1_Act change to FALSE Meanwhile the first MC_MoveRelative instruction is aborted and the second MC_MoveRelative instru...

Page 451: ...on execution continues As the target position is reached Rel1_Done changes to TRUE Rel1_Bsy and Rel1_Act change to FALSE Rel2_Act changes to TRUE and the second MC_MoveRelative instruction execution s...

Page 452: ...ne changes to TRUE At the moment the velocity is 300 units second which is the lower one of the target velocities of the current instruction and buffered instruction Rel1_Bsy and Rel1_Act change to FA...

Page 453: ...is reached Rel1_Done changes to TRUE At the moment the velocity is 300 units second which is the target velocity of the current instruction Rel1_Bsy and Rel1_Act change to FALSE Rel2_Act changes to TR...

Page 454: ...t position is reached Rel1_Done changes to TRUE At the moment the velocity is 500 units second which is the target velocity of the buffered instruction Rel1_Bsy and Rel1_Act change to FALSE Rel2_Act c...

Page 455: ...e changes to TRUE At the moment the velocity is 500 units second which is the higher one of the target velocities of the current instruction and buffered instruction Rel1_Bsy and Rel1_Act change to FA...

Page 456: ...Pwr_Sta BOOL Pwr_Bsy BOOL Pwr_Act BOOL Pwr_Err BOOL Pwr_ErrID WORD Vel MC_MoveVelocity Vel _Ex BOOL FALSE Vel _Vel LREAL 10000 0 Vel _Acc LREAL 10000 0 Vel _Dec LREAL 10000 0 Vel _Jerk LREAL 10000 0 V...

Page 457: ...C_MoveRelative Axis Done Rel Execute ContinuousUpdate Busy Active Distance CommandAborted Error ErrorID Acceleration Deceleration Jerk BufferMode Velocity Rel_Bsy Rel_Act Rel_Abt Rel_Err Rel_ErrID Rel...

Page 458: ...MC_MoveRelative instruction as Rel_Ex changes from FALSE to TRUE As Vel_Abt changes to TRUE Vel_Bsy and Vel_Act change to FALSE the velocity instruction is aborted the MC_MoveRelative instruction is...

Page 459: ...Rel_Act is TRUE which means that the MC_MoveRelative instruction starts to control the motion of the axis Rel_Done changes to TRUE as the positioning is completed The effect of Rel_BM mcBlendingLow mc...

Page 460: ...Rel_Dec LREAL 10000 0 Rel_Jerk LREAL 10000 0 Rel_BM MC_Buffer_Mode 0 Rel_Done BOOL Rel_Bsy BOOL Rel_Act BOOL Rel_Abt BOOL Rel_Err BOOL Rel_ErrID WORD Vel MC_MoveVelocity Vel _Ex BOOL FALSE Vel _Vel L...

Page 461: ...C_MoveRelative Axis Done Rel Execute ContinuousUpdate Busy Active Distance CommandAborted Error ErrorID Acceleration Deceleration Jerk BufferMode Velocity Rel_Bsy Rel_Act Rel_Abt Rel_Err Rel_ErrID Rel...

Page 462: ...es at the velocity and acceleration specified by the velocity instruction When Rel_Abt changes to TRUE Rel_Bsy and Rel_Act change to FALSE the MC_MoveRelative instruction is aborted and the velocity i...

Page 463: ...ion of the MC_MoveRelative instruction is completed Then Rel_Done changes to TRUE Rel_Bsy and Rel_Act change to FALSE and the axis moves at the velocity and acceleration specified by the velocity inst...

Page 464: ...rom FALSE to TRUE and Vel_Bsy changes to TRUE The axis will wait for the completion of MC_MoveRelative execution After MC_MoveRelative execution is completed Rel_Done changes to TRUE Rel_Bsy changes t...

Page 465: ...completion of MC_MoveRelative execution After MC_MoveRelative execution is completed Rel_Done changes to TRUE Rel_Bsy changes to FALSE Rel_Act changes to FALSE and meanwhile Vel_Act changes to TRUE At...

Page 466: ...r the completion of MC_MoveRelative execution After MC_MoveRelative execution is completed Rel_Done changes to TRUE Rel_Bsy changes to FALSE Rel_Act changes to FALSE and meanwhile Vel_Act changes to T...

Page 467: ...tion is completed Rel_Done changes to TRUE Rel_Bsy changes to FALSE and Rel_Act changes to FALSE At the moment the velocity is 20000units second which is the higher one of the target speeds of the cur...

Page 468: ...Home MC _S to p M C _Stop MC_S top M C _MoveVelo ci ty M C _MoveAb so lute M C_ MoveR ela ti ve M C _Mo veA dditive M C _M ove Super im posed MC _M oveVelocity M C_M oveVelocity M C _Mo veS uperi mpo...

Page 469: ...tatus of MC_Power is TRUE Note6 The axis enters from Stopping to Standstill state when Done of MC_Stop is TRUE and Execute of MC_Stop is FALSE No Axis state Indication 1 StandStill Pre execution state...

Page 470: ...DVP 15MC Series Motion Controller Operation Manual 10 34 10 MEMO...

Page 471: ...MC_MoveAdditive 11 46 MC_MoveAbsolute 11 54 MC_MoveSuperimposed 11 63 MC_HaltSuperimposed 11 70 MC_SetPosition 11 75 MC_SetOverride 11 86 MC_Reset 11 90 DMC_SetTorque 11 93 MC_ReadAxisError 11 97 MC_R...

Page 472: ..._In 11 246 11 5 5 3 APF_RotaryCut_Out 11 248 Application Example of Rotary Cut Instructions 11 250 11 6 G Code Instructions 11 254 CNC Introduction 11 254 G Code Input Format 11 254 Explanation of G C...

Page 473: ...313 DMC_GroupEnable 11 315 DMC_ GroupStop 11 318 DMC_GroupInterrupt 11 324 DMC_GroupContinue 11 329 DMC_MoveDirectAbsolute 11 331 DMC_MoveDirectRelative 11 336 DMC_MoveLinearAbsolute 11 341 DMC_MoveL...

Page 474: ...State Read Motion State DMC_ReadParameter_Motion Read a Parameter DMC_WriteParameter_Motion Write a Parameter Value DMC_TouchProbe Capture Axis Position DMC_TouchProbeCyclically Capture axis position...

Page 475: ...Axes Group Instructions DMC_ AddAxisToGroup Add an axis to an axes group DMC_RemoveAxisFromGroup Remove an axis from an axes group DMC_UngroupAllAxes Remove all axes in an axes group DMC_ GroupEnable...

Page 476: ...ypes of program languages For details refer to the software help file Ladder diagram LD Structured text ST Configuration of Motion Control Instructions Motion instructions can only be added to the mot...

Page 477: ...Enable changes to TRUE EnableNegative The specified axis is allowed to move reversely only under the condition that Enable is TRUE and EnableNegative is also TRUE BOOL TRUE or FALSE FALSE When Enable...

Page 478: ...When an error occurs in the execution of the instruction Error changes to TRUE the corresponding error code is contained in ErrorID and meanwhile Status Busy and Active all change to FALSE Error chang...

Page 479: ...nable of MC_Power changes from TRUE to FALSE and whether the axis enters the Disable state depends on the value of Buffermode 9 Buffermode BufferMode specifies the behavior of MC_Power when Enable cha...

Page 480: ...ID Vel_Ex Vel_Invel MC_Power Axis Status Pwr Enable EnablePositive Busy Active EnableNegative BufferMode Error ErrorID MC_MoveVelocity Axis Invelocity Vel Execute ContinuousUpdate Busy Active Velocity...

Page 481: ...FALSE When Pwr_En changes to FALSE Pwr_Sta change to FALSE after the axis is disabled Programming Example 2 The example of Vel _BM 0 When the value of Vel _BM is set to 0 and Pwr_En changes from TRUE...

Page 482: ...Bsy Stp_Act Stp_Abt Stp_Err Stp_ErrID MC_Stop Axis Done Stp Execute Deceleration Busy Active Jerk Error ErrorID CommandAborted 2 Motion Curve and Timing Chart When Vel _Ex changes to TRUE the servo mo...

Page 483: ...will go to the Disabled state 1 The variables and program Variable name Data type Initial value Pwr MC_Power Axis1 USINT 1 Pwr_En BOOL FALSE Pwr_EnPs BOOL FALSE Pwr_BM MC_Buffer_Mode 0 Pwr_Sta BOOL Pw...

Page 484: ...ufferMode MC_Stop Axis Done Stp Execute Deceleration Busy Active Jerk Error ErrorID CommandAborted 2 Motion Curve and Timing Chart When Vel _Ex changes to TRUE Vel _Bsy changes to TRUE one cycle later...

Page 485: ...o TRUE Meanwhile the axis enters the Standstill state and Pwr_Sta changes to FALSE One cycle later the axis goes to the Disabled state When Vel _Ex changes to FALSE Vel _Abt changes to FALSE When Stp...

Page 486: ...utput Parameters Parameter name Function Data type Valid range Done TRUE when the homing is completed BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Active TRUE when...

Page 487: ...occurs in the instruction execution or the input parameters for the instruction are illegal When Execute changes from TRUE to FALSE Output Update Timing Chart Case 1 When Execute changes from FALSE to...

Page 488: ...efines the offset between the mechanical zero point and servo reference zero point as the figure below A Mechanical zero point where the photoelectric sensor is For different Position value the servo...

Page 489: ...mechanism regards the home switch position as the mechanical zero point position A The home switch is OFF before searching for the home While the mechanism is searching for the home point the servo ro...

Page 490: ...ion controller controls the motion of the servo motor The mechanism starts to run reversely rotates forward after reaching the home switch and then stops at the mechanical zero point And the mechanism...

Page 491: ...hen Execute changes from FALSE to TRUE Acceleration Specify the target acceleration Unit unit second2 LREAL Positive number The variable value must be set When Execute changes from FALSE to TRUE Decel...

Page 492: ...from FALSE to TRUE Invelocity will change from FALSE to TRUE when the new target speed is reached after the target speed is changed through MC_SetOverride before the execution of MC_MoveVelocity is c...

Page 493: ...struction is aborted by other instruction and CommandAborted changes to TRUE Meanwhile Invelocity Busy and Active change to FALSE When Execute changes from TRUE to FALSE CommandAborted changes to FALS...

Page 494: ...Ex BOOL FALSE Vel_Dir MC_DIRECTION 1 Vel_BM MC_Buffer_Mode 0 Vel_Invel BOOL Vel_Bsy BOOL Vel_Act BOOL Vel_Abt BOOL Vel_Err BOOL Vel_ErrID WORD 2 1 Axis1 True True Pwr_BM Pwr_Bsy Pwr_Act Pwr_Err Pwr_Er...

Page 495: ...le 2 Below is the example that one MC_MoveVelocity instruction aborts another MC_MoveVelocity instruction 1 The variable table and program Variable name Data type Initial value Pwr MC_Power Axis1 USIN...

Page 496: ...ID Axis1 300 0 100 0 100 0 15 0 Vel1_Dir Vel1_BM Vel1_Bsy Vel1_Act Vel1_Abt Vel1_Err Vel1_ErrID Vel1_Ex Vel1_Invel MC_MoveVelocity Axis Invelocity Vel1 Execute ContinuousUpdate Busy Active Velocity Er...

Page 497: ...el2_Act changes to TRUE the first MC_MoveVelocity instruction is aborted Vel1_Abt changes to TRUE and the axis starts to perform the second MC_MoveVelocity instruction When the target velocity is reac...

Page 498: ...er The variable value must be set When Execute changes from FALSE to TRUE BufferMode Specify the behavior when executing two instructions 0 Aborting 1 Buffered MC_Buffer_ Mode 0 mcAborting 1 mcBuffere...

Page 499: ...er the instruction execution is completed Done changes to TRUE when the instruction execution is completed after Execute changes from TRUE to FALSE during the instruction execution One period later Do...

Page 500: ...tion is completed after Execute changes from TRUE to FALSE Meanwhile Busy and Active change to FALSE and one period later Done changes to FALSE Function MC_Halt is used to make the axis decelerate at...

Page 501: ...s1 True True Pwr_BM Pwr_Bsy Pwr_Act Pwr_Err Pwr_ErrID Pwr_En Pwr_Sta MC_Power Axis Status Pwr Enable EnablePositive Busy Active EnableNegative BufferMode Error ErrorID Axis1 10000 0 5000 0 5000 0 2000...

Page 502: ...n Hlt_Ex changes to TRUE Hlt_Bsy changes to TRUE and one period later Hlt_Act changes to TRUE Meanwhile Vel_Invel changes to FALSE and Vel_Abt changes to TRUE and then the servo motor starts to decele...

Page 503: ...e changes from FALSE to TRUE There is no impact on the instruction execution when Execute of the instruction changes from TRUE to FALSE in the course of the instruction execution 2 While Execute chang...

Page 504: ...nges to TRUE When CommandAborted changes to TRUE When Done changes from TRUE to FALSE Active When the instruction starts to control the axis When Error changes to TRUE When CommandAborted changes to T...

Page 505: ...and Active all change to FALSE Function MC_Stop is used to make the axis decrease its speed at a given deceleration rate till it stops As long as Execute is TRUE after execution of MC_Stop is complete...

Page 506: ...s1 True True Pwr_BM Pwr_Bsy Pwr_Act Pwr_Err Pwr_ErrID Pwr_En Pwr_Sta MC_Power Axis Status Pwr Enable EnablePositive Busy Active EnableNegative BufferMode Error ErrorID Axis1 10000 0 5000 0 5000 0 2000...

Page 507: ...p_Bsy changes to TRUE One period later Stp_Act changes to TRUE meanwhile Vel_Invel changes to FALSE Vel_Abt changes to TRUE and the servo motor starts to decelerate When the axis velocity is decreased...

Page 508: ...arget velocity Unit Unit second LREAL Positive number The variable value must be set When Execute changes from FALSE to TRUE Acceleration Specify the target acceleration rate Unit Unit s2 LREAL Positi...

Page 509: ...is being executed BOOL TRUE FALSE Active TRUE when the axis is being controlled by the instruction BOOL TRUE FALSE CommandAborted TRUE when the instruction execution is aborted BOOL TRUE FALSE Error T...

Page 510: ...hanges to FALSE when Execute changes from TRUE to FALSE Case 4 In the course of execution of the instruction Done changes to TRUE when the instruction execution is completed after Execute changes from...

Page 511: ...SINT 1 Pwr_En BOOL FALSE Pwr_BM MC_Buffer_Mode 0 Pwr_Sta BOOL Pwr_Bsy BOOL Pwr_Act BOOL Pwr_Err BOOL Pwr_ErrID WORD Rel MC_MoveRelative Rel _Ex BOOL FALSE Rel _BM MC_Buffer_Mode 0 Rel _Done BOOL Rel _...

Page 512: ...cuted for the first time when Rel_Ex changes from FALSE to TRUE for the first time At the moment the current position of the axis is 2000 and the target position is 7000 7000 2000 5000 When the axis p...

Page 513: ...USINT 1 Pwr_En BOOL FALSE Pwr_BM MC_Buffer_Mode 0 Pwr_Sta BOOL Pwr_Bsy BOOL Pwr_Act BOOL Pwr_Err BOOL Pwr_ErrID WORD Rel1 MC_MoveRelative Rel1 _Ex BOOL FALSE Rel1 _BM MC_Buffer_Mode 0 Rel1 _Done BOOL...

Page 514: ...Acceleration Deceleration Jerk BufferMode Velocity Axis1 True True 0 Pwr_Bsy Pwr_Act Pwr_Err Pwr_ErrID Pwr_En Pwr_Sta MC_Power Axis Status Pwr Enable EnablePositive Busy Active EnableNegative BufferMo...

Page 515: ...eached Rel2_Ex changes from FALSE to TRUE the second MC_MoveRelative instruction starts being executed and the execution of the first MC_MoveRelative is aborted and Rel1_Abt changes to TRUE When the a...

Page 516: ...L Positive number or 0 0 When Execute changes from FALSE to TRUE Acceleration Specify the target acceleration Unit Unit s2 LREAL Positive number The variable value must be set When Execute changes fro...

Page 517: ...ere is an error BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to the section 12 2 WORD Output Update Timing Parameter Name Timing for changing to TRUE Timing for ch...

Page 518: ...struction when MC_MoveAdditive is executed When the execution of MC_MoveAdditive is completed the final position of the terminal actuator is the sum of the given distances of the former instruction an...

Page 519: ...the uncompleted distance left by MC_MoveSuperimposed plus the uncompleted distance left by the position instruction in conjunction with MC_MoveSuperimposed No MC_MoveSuperimposed is aborted immediate...

Page 520: ...D Addt_Done Axis1 5000 0 500 0 20 0 20 0 20 0 Addt_BM Addt_Ex MC_MoveAdditive Axis Done Addt Execute ContinuousUpdate Busy Active Distance Error ErrorID CommandAborted Acceleration Deceleration Jerk B...

Page 521: ...on controller controls the motion of the servo motor and Addt_Done changes from FALSE to TRUE once again after the servo motor reaches the set distance Programming Example 2 Below is an example on the...

Page 522: ...cceleration Deceleration Jerk BufferMode Velocity Axis1 True True Pwr_BM Pwr_Bsy Pwr_Act Pwr_Err Pwr_ErrID Pwr_En Pwr_Sta MC_Power Axis Status Pwr Enable EnablePositive Busy Active EnableNegative Buff...

Page 523: ...tion is aborted and Addt1_Abt changes from FALSE to TRUE Meanwhile the servo motor moves according to the parameters of the second MC_MoveAdditive instruction Addt2_Done changes from FALSE to TRUE whe...

Page 524: ...E to TRUE Velocity Specify the target velocity Unit Unit s LREAL Positive number The variable value must be set When Execute changes from FALSE to TRUE Acceleration Specify the target acceleration Uni...

Page 525: ...eted the instruction can be re executed 3 When the axis is a rotary axis Position can be the value within the range of 0 the value of modulo excluding the value of modulo An error will occur in the in...

Page 526: ...ted after Execute changes from TRUE to FALSE during the instruction execution One period later CommandAborted changes to FALSE Error When an error occurs in the instruction execution or the input para...

Page 527: ...ted The axis will move reversely when Position 0 5000 See the figure below when Position is 5000 The axis will move reversely when Position 0 5000 See the figure below when Position is 5000 Note As lo...

Page 528: ...tion 90 Movement angle 135 Direction 2 Shortest way Current position 315 Target position 270 Movement angle 45 Direction 4 Current direction The status of the rotary axis before the instruction is exe...

Page 529: ...IRECTION 0 Abs_BM MC_Buffer_Mode 0 Abs_Done BOOL Abs_Bsy BOOL Abs_Act BOOL Abs_Abt BOOL Abs_Err BOOL Abs_ErrID WORD 2 1 Abs_Bsy Abs_Act Abs_Abt Abs_Err Abs_ErrID Abs_Done Axis1 7000 0 300 0 100 0 100...

Page 530: ...ple on how one MC_MoveAbsolute instruction aborts the execution of another MC_MoveAbsolute instruction is shown below 1 The variables and program Variable name Data type Initial value Pwr MC_Power Axi...

Page 531: ...bsolute Axis Done Abs1 Execute ContinuousUpdate Busy Active Position Error ErrorID CommandAborted Acceleration Deceleration Jerk Direction Velocity BufferMode Axis1 True True Pwr_BM Pwr_Bsy Pwr_Act Pw...

Page 532: ...Ex changes from FALSE to TRUE the second MC_MoveAbsolute instruction starts being executed and the first MC_MoveAbsolute instruction is aborted with its output parameter Abs1_Abt changing to TRUE When...

Page 533: ...he variable value must be set When Execute changes from FALSE to TRUE Deceleration Specify the target deceleration rate Unit Unit s2 LREAL Positive number The variable value must be set When Execute c...

Page 534: ...ning is completed When Execute changes from TRUE to FALSE after the instruction execution is completed Done changes to TRUE when the instruction execution is completed after Execute changes from TRUE...

Page 535: ...rted If the two instructions are executed simultaneously their distances velocities accelerations and decelerations will be respectively added up in real time When the set velocity of either of the in...

Page 536: ...mposed instruction is used 1 The variable table and program Variable name Data type Initial value Pwr MC_Power Axis1 USINT 1 Pwr_En BOOL FALSE Pwr_BM MC_Buffer_Mode 0 Pwr_Sta BOOL Pwr_Bsy BOOL Pwr_Act...

Page 537: ...e servo motor completes the set distance the motion controller controls the servo motor to run When the servo motor completes the set distance Sup_Done changes to TRUE again Programming Example 2 Belo...

Page 538: ...y Active EnableNegative BufferMode Error ErrorID Rel_Bsy Rel_Act Rel_Abt Rel_Err Rel_ErrID Rel_Done Rel_Ex Axis1 10000 0 600 0 100 0 100 0 15 0 MC_MoveRelative Axis Done Rel Execute ContinuousUpdate B...

Page 539: ...s of the velocities and accelerations of the two instructions respectively When the superimposed distance specified by the MC_MoveSuperimposed instruction is completed Sup_Done changes to TRUE and Sup...

Page 540: ...r The variable value must be set When Execute changes from FALSE to TRUE Notes 1 MC_HaltSuperimposed instruction is executed when Execute changes from FALSE to TRUE There is no impact on the instructi...

Page 541: ...UE When Error changes to TRUE When CommandAborted changes to TRUE CommandAborted When this instruction execution is aborted by other motion control instruction When Execute changes from TRUE to FALSE...

Page 542: ...sed instruction The MC_HaltSuperimposed instruction cannot be executed alone and it can only be used with the MC_MoveSuperimposed instruction together If the MC_HaltSuperimposed instruction is execute...

Page 543: ...up_Act Sup_Abt Sup_Err Sup_ErrID Sup_Done Sup_Distan Axis1 5000 0 600 0 90 0 90 0 15 0 Sup_Ex MC_MoveSuperimposed Axis Done Sup Execute ContinuousUpdate Busy Active Distance Error ErrorID CommandAbort...

Page 544: ...When Hltsup_Ex changes to TRUE Hltsup_Bsy changes to TRUE One cycle later Hltsup_Act changes to TRUE the execution of the MC_HaltSuperimposed instruction starts the MC_MoveSuperimposed instruction is...

Page 545: ...hanges from FALSE to TRUE BOOL TRUE or FALSE FALSE Position Specify the target Position Unit Unit LREAL Negative number positive number or 0 0 When Execute changes from FALSE to TRUE Relative Specify...

Page 546: ...the instruction are illegal When Execute changes from TRUE to FALSE Output Update Timing Chart Case 1 When Execute changes from FALSE to TRUE Busy changes to TRUE and one period later Done changes to...

Page 547: ...Type ReferenceType is used to select the command position or actual position as the reference position When ReferenceType is 0 the reference position is the command position of the axis When Reference...

Page 548: ...command position and actual position of the axis are 3000 and 2300 respectively difference value P 700 The command position changes to 6000 and actual position becomes 5300 5300 6000 P after the inst...

Page 549: ...will not be influenced MC_SetPosition will report an error when it is executed in the process of execution of MC_Stop But MC_SetPosition can be executed normally after MC_Stop execution is completed P...

Page 550: ...e Position Busy Error Relative ReferenceType ErrorID Rel_Bsy Rel_Act Rel_Abt Rel_Err Rel_ErrID Rel_Done Rel_Ex Axis1 10000 0 3000 0 3000 0 3000 0 3000 0 MC_MoveRelative Axis Done Rel Execute Continuou...

Page 551: ...does not affect the motion which is being performed through observing the above velocity change curve Programming Example 2 The following example describes the impact of MC_SetPosition execution on th...

Page 552: ...se SetPos_Ex 4000 0 SetPos_RefTp SetPos_Bsy SetPos_Done SetPos_Err SetPos_ErrID MC_SetPosition Axis Done SetPos Execute Position Busy Error Relative ReferenceType ErrorID Rel_Bsy Rel_Act Rel_Abt Rel_E...

Page 553: ...on which is being performed through observing the above velocity change curve Programming Example 3 The following example shows how MC_SetPosition execution affects MC_MoveAbsolute instruction which i...

Page 554: ...sy Abs_Act Abs_Abt Abs_Err Abs_ErrID Abs_Done Axis1 10000 0 3000 0 3000 0 3000 0 3000 0 Abs_Dir Abs_Ex MC_MoveAbsolute Axis Done Abs Execute ContinuousUpdate Busy Active Position Error ErrorID Command...

Page 555: ...000 as MC_SetPosition starts being executed and 11000 after the instruction execution is completed The position is 15000 as MC_MoveAbsolute execution ends It can be seen that MC_SetPosition does not a...

Page 556: ...me Function Data type Valid range Enabled TRUE when the instruction is controlling the axis BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Error TRUE when an error oc...

Page 557: ...Additive Additive positioning MC_MoveVelocity Velocity instruction MC_MoveSuperimposed Superimposed positioning 3 The new target velocity is calculated as below The new target velocity after modificat...

Page 558: ...uted after Invelocity of MC_MoveVelocity changes to TRUE Programming Example The example of how MC_MoveVelocity is affected by the execution of the MC_SetOverride instruction is described as below 1 T...

Page 559: ...ed Vel_Invel changes to TRUE After Vel_Invel changes to TRUE Vel_Invel remains TRUE even if VelFactor value SetOv_Velf is modified When SetOv_En changes to FALSE it means the axis starts to decelerate...

Page 560: ...he instruction is being executed BOOL TRUE FALSE Error TRUE when an error occurs in execution of the instruction BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to se...

Page 561: ...e being executed stop When the axis alarms the execution of the instruction can clear the axis alarm information After the execution of MC_Reset instruction is completed the axis state will be determi...

Page 562: ...Rset_Busy is TRUE in the first cycle and Rset_Done is TRUE in the second cycle Meanwhile the axis enters the Standstill state from the ErrorStop state 3 2 1 ReadSt_Bsy ReadSt_Err ReadSt_ErrID ReadSt_...

Page 563: ...mber and 0 0 When Enable changes to TRUE Notes 1 If the torque value is a positive number the effection that the servo produces works in the positive direction If the torque value is a negative number...

Page 564: ...rted changes to FALSE Error When an error occurs in the instruction execution or the input parameters for the instruction are illegal When Enable changes from TRUE to FALSE Output Update Timing Chart...

Page 565: ...gram Variable name Data type Initial value Pwr MC_Power Axis1 USINT 1 Pwr_BM MC_Buffer_Mode 0 Pwr_Sta BOOL Pwr_Bsy BOOL Pwr_Act BOOL Pwr_Err BOOL Pwr_ErrID WORD SetTq DMC_SetTorque SetTq_En BOOL FALSE...

Page 566: ...anges to TRUE One cycle later SetTq_Act changes to TRUE and the DMC_SetTorque instruction starts When the torque is reached SetTq_InTorque changes to TRUE and SetTq_Bsy and SetTq_Act remain TRUE SetTq...

Page 567: ...rror in the execution of the instruction BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to section 12 2 WORD AxisErrorID When Valid is TRUE the value of ErrorID xxx...

Page 568: ...occurs Error changes to TRUE and ErrorID shows corresponding error code Meanwhile Busy changes to FALSE When Enable changes from TRUE to FALSE Error changes to FALSE and the value of ErrorID is cleare...

Page 569: ...id TRUE when the output of the instruction is valid BOOL TRUE FALSE Busy TRUE while the instruction is being executed BOOL TRUE FALSE Error TRUE while there is an error in the execution of the instruc...

Page 570: ...xis its output Position equals ActualPosition above when the instruction is executed If the axis is a rotary axis its output Position equals ActualPosition modulo when the instruction is executed Posi...

Page 571: ...e Initial value Rel MC_MoveRelative Axis1 USINT 1 Rel_Ex BOOL FALSE Rel_Done BOOL Rel_Bsy BOOL Rel_Act BOOL Rel_Abt BOOL Rel_Err BOOL Rel_ErrID WORD TON1 TON SR1 SR SetPos SetPosition SetPos_Ex BOOL F...

Page 572: ...Rel_Done Rel_Ex Axis1 10000 0 3000 0 3000 0 3000 0 3000 0 MC_MoveRelative Axis Done Rel Execute ContinuousUpdate Busy Active Distance CommandAborted Error ErrorID Acceleration Deceleration Jerk Buffe...

Page 573: ...er the execution is completed The actual position is 15000 after MC_MoveRelative execution is completed It can be seen from the above velocity curve chart that MC_SetPosition does not affect the ongoi...

Page 574: ...tput of the instruction is valid BOOL TRUE FALSE Busy TRUE while the instruction is being executed BOOL TRUE FALSE Error TRUE while there is an error in the execution of the instruction BOOL TRUE FALS...

Page 575: ...s for the instruction are illegal When Enable changes from TRUE to FALSE ErrorStop When the axis enters ErrorStop state When the axis is not in ErrorStop state Disabled When the axis enters Disabled s...

Page 576: ...FALSE to TRUE and ErrorID shows corresponding error codes and Busy changes from TRUE to FALSE When Enable changes from TRUE to FALSE Error changes from TRUE to FALSE and meanwhile ErrorID changes to 0...

Page 577: ...el_Act Rel_Abt Rel_Err Rel_ErrID Rel_Done Rel_Ex Axis1 5000 0 300 0 100 0 100 0 MC_MoveRelative Axis Done Rel Execute ContinuousUpdate Busy Active Distance CommandAborted Error ErrorID Acceleration De...

Page 578: ...tans changes to FALSE and ReadSt_Dism changes to TRUE When the servo motor moves the target distance Rel_Done and ReadSt_Stans change to TRUE Rel_Bsy Rel_Act and ReadSt_Dism change to FALSE Rel_Done a...

Page 579: ...egative keep the status as Enable is TRUE Output Parameters Parameter name Function Data type Valid range Valid TRUE when the output of the instruction is valid BOOL TRUE FALSE Busy TRUE while the ins...

Page 580: ...velocity is increased When the axis velocity is not increased any more and Enable is still TRUE Decelerating When the absolute value of the axis velocity is decreased When the axis velocity is not de...

Page 581: ...adMotionState is used to read current motion state of the servo axis The motion state of the servo axis includes the constant motion acceleration or deceleration positive rotation and negative rotatio...

Page 582: ...tive DirectionNegative Source Axis1 True True Pwr_Bsy Pwr_Act Pwr_Err Pwr_ErrID Pwr_En Pwr_Sta MC_Power Axis Status Pwr Enable EnablePositive Busy Active EnableNegative BufferMode Error ErrorID Rel1_B...

Page 583: ...positive direction and meanwhile ReadMoSt_Accet and ReadMoSt_DirtPos change to TRUE When ReadMoSt_Constvel changes from FALSE to TRUE ReadMoSt_Accet changes from TRUE to FALSE and the axis enters the...

Page 584: ...xecution is completed BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Active TRUE when the axis is being controlled BOOL TRUE FALSE Error TRUE when an error occurs in...

Page 585: ...execution is completed Busy When Execute changes to TRUE When Error changes to TRUE When Done changes from FALSE to TRUE Active When the instruction starts to control the axis When Error changes to TR...

Page 586: ...m TRUE to FALSE and the content of ErrorID is cleared to 0 Function DMC_ReadParameter_Motion reads a slave parameter value Users can specify the index and subindex of the parameter which is to be read...

Page 587: ...x 2 Timing Chart When ReadPm_M1_Ex changes from FALSE to TRUE executing the first DMC_ReadParameter_Motion instruction starts When the instruction execution is completed ReadPm_M1_Done changes to TRUE...

Page 588: ...uting the second DMC_ReadParameter_Motion instruction starts When the instruction execution is completed ReadPm_M2_Done changes to TRUE ReadPm_M2_DaTy is 2 and ReadPm_M2_Dat is 1000 That is the conten...

Page 589: ...e 1 Byte 2 Word 4 Double Word USINT Data The value of the parameter to write UDINT Notes 1 DataType must be the data type of the parameter to write An error will occur if the filled value is incorrect...

Page 590: ...te Timing Chart Case 1 When Execute changes from FALSE to TRUE Busy and Active change to TRUE One cycle later Done changes to TRUE After Done changes to TRUE Busy and Active change to FALSE in the sam...

Page 591: ...dPm_M2_Done BOOL TRUE ReadPm_M2_Bsy BOOL FALSE ReadPm_M2_Act BOOL FALSE ReadPm_M2_Err BOOL FALSE ReadPm_M2_ErrID WORD FALSE ReadPm_M2_DaTy USINT 2 ReadPm_M2_Dat UDINT 1000 2 1 ReadPm_M1_Bsy ReadPm_M1_...

Page 592: ...M_Done changes to TRUE That means the content of the servo slave parameter P1 55 which is set is 1000 The maximum velocity of the servo is limited to 1000rpm When WritePm_M_Done changes from FALSE to...

Page 593: ...points I0 I7 I10 I17 of the motion controller as the bit for triggering position capture The values of the parameter 0 15 correspond to input points I0 I7 and I10 I17 The parameter is valid when Mode...

Page 594: ...r of pulses that CN5 port of the servo drive receives through axis parameters For the capture which is conducted by using the input point of a servo drive different servo drive models correspond to di...

Page 595: ...ion When Execute changes from TRUE to FALSE CommandAborted is set to TRUE when the instruction execution is aborted after Execute changes from TRUE to FALSE during the instruction execution One period...

Page 596: ...modes the data sources are different Servo gear ratio setting and Mechanism gear ratio setting in axis parameters are shown in the following table When Mode value of the instruction is equal to 3 whic...

Page 597: ...ion capture is conducted through the falling edge of the input point specified by TriggerInput The captured position is converted from the number of pulses the external encoder port of the controller...

Page 598: ...rvo drive The captured position is converted from the number of pulses CN1 port of the servo drive receives through axis parameters Mode 4 The external signal triggers the high speed input point DI7 o...

Page 599: ...ng edge of I0 under mode 0 1 The variable table and program Variable name Data type Initial value NOT_EN BOOL FALSE NOT_ENO BOOL Touch DMC_TouchProbe Axis1 USINT 3 Touch_Ex BOOL FALSE Touch_Tri MC_Tri...

Page 600: ...ouch_Done changes from FALSE to TRUE the position Touch_Pos outputs is converted from the number of pulses that the externam encoder port of the controller receives through axis parameters Meantime To...

Page 601: ...h1_ErrID Touch1_ Pos When Touch1_Ex changes from FALSE to TRUE Touch1_Bsy changes from FALSE to TRUE in the first cycle and Touch1_Act changes from FALSE to TRUE in the second cycle When the execution...

Page 602: ...nts I0 I7 and I10 I17 The parameter is valid when Mode is 0 and 1 and invalid when Mode is 2 3 and 4 MC_Triggerinput 0 mcTriggerinputI0 7 mcTriggerinputI7 8 mcTriggerinputI10 15 mcTriggerinputI17 0 Wi...

Page 603: ...es from the rising edge of the input point of the servo drive The captured position is converted from the number of pulses that CN5 port of the servo drive receives through axis parameters For the cyc...

Page 604: ...When Error changes to TRUE When CommandAborted changes to TRUE CommandA borted When the instruction execution is aborted by some other motion control instruction When Execute changes from TRUE to FAL...

Page 605: ...alue of ErrorID will be cleared Function DMC_TouchProbeCyclically is used for capturing the position of an axis cyclically The function is similar to that of DMC_TouchProbe The difference is that the...

Page 606: ...ue must be set When JogForward or JogBackward is TRUE Acceleration Specify the target acceleration rate Unit Unit s2 LREAL Positive number The variable value must be set When JogForward or JogBackward...

Page 607: ...ed Error Error ID Case1 Case2 Case3 Case 1 When JogForward or JogBackward changes from FALSE to TRUE Busy changes to TRUE When the jogging stops the velocity of the axis is decreased to 0 Done changes...

Page 608: ...LSE to TRUE BOOL TRUE or FALSE FALSE Ex_Stop The instruction controls the axis to run when Ex_Stop changes from FALSE to TRUE BOOL TRUE or FALSE FALSE Velocity Specify the target velocity Unit Unit se...

Page 609: ...being controlled by the instruction BOOL TRUE FALSE CommandAborted TRUE when the instruction is aborted BOOL TRUE FALSE Error TRUE when there is an error in the execution of the instruction BOOL TRUE...

Page 610: ...nges to TRUE and meanwhile Busy and Active change to FALSE When Ex_Move and Ex_Stop change from TRUE to FALSE Stop_Done changes to FALSE Case 2 When Ex_Move changes to TRUE the instruction is aborted...

Page 611: ...e figure below And the axis can be controlled to stop at the phase specified by StopPhase via the DMC_MoveVelocityStopByPos instruction The terminal actuator may stop at the position of 12500 units 22...

Page 612: ...the axis to run when Ex_Move changes from FALSE to TRUE BOOL TRUE or FALSE FALSE Ex_Stop The instruction controls the axis to run when Ex_Stop changes from FALSE to TRUE BOOL TRUE or FALSE FALSE Velo...

Page 613: ...the axis is being controlled by the instruction BOOL TRUE FALSE CommandAborted TRUE when the instruction is aborted BOOL TRUE FALSE Error TRUE when there is an error in the execution of the instructi...

Page 614: ...tion is reached Stop_Done changes to TRUE and meanwhile Busy and Active change to FALSE When Ex_Move and Ex_Stop change from TRUE to FALSE Stop_Done changes to FALSE Case 2 When Ex_Move changes to TRU...

Page 615: ...elow And the terminal actuator can be controlled to stop at the position specified by StopPhase via the DMC_MoveVelocityStopByLinePos instruction The terminal actuator may stop at the position of 4000...

Page 616: ...en the position lag is out of the valid range BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Error TRUE when there is an error in the execution of the instruction BOO...

Page 617: ...OutOfRange output will change to TRUE once the instruction detects that the actual position difference of the specified axis exceeds the Lag value and the OutOfRange output will change to FALSE once t...

Page 618: ...Time for the specified axis When DWPLS_Done changes to TRUE it indicates that the parameters writing is completed When DRPLS_En changes to TRUE the DMC_ReadPositionLagStatus instruction begins to dete...

Page 619: ...ber The variable value must be set When Execute changes from FALSE to TRUE HoldTime A period of time during which the set Lag value is exceeded Unit second LREAL 0 or Positive number 0 When Execute ch...

Page 620: ...position and feedback position and the allowed length of time specified by HoldTime during which the setting value of Lag is exceeded Whether the actual position difference of a specified axis exceed...

Page 621: ...variable value must be set When Execute changes from FALSE to TRUE OutputRotation InputRotation and this parameter and decide the mechanical gear ratio LREAL Positive integer The variable value must...

Page 622: ...Timing Chart Execute Done Busy Error Error ID Case 1 Ca se 2 Case 1 When Execute changes from FALSE to TRUE Busy changes to TRUE When the instruction execution is completed Done changes to TRUE and Bu...

Page 623: ...Enable changes from FALSE to TRUE BOOL TRUE or FALSE FALSE When Enable changes to TRUE ContinuousUpdate Reserved Torque Specify the target torque The torque is expressed with the permillage of rated t...

Page 624: ...uction BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to section 12 2 for the corresponding error ID WORD Output Update Timing Name Timing for changing to TRUE Timin...

Page 625: ...tion DMC_TorqueControl controls an axis to work under torque mode and carry out the torque output Based on the set change rate of the torque axis motion will change in the process from current toque t...

Page 626: ...OOL TC_ErrID WORD 1 Axis1 Pwr_EnPs True Pwr_BM Pwr_Bsy Pwr_Act Pwr_Err Pwr_ErrID Pwr_En Pwr_Sta MC_Power Axis Status Pwr Enable EnablePositive Busy Active EnableNegative BufferMode Error ErrorID 2 DMC...

Page 627: ...sy changes from FALSE to TRUE When TC_Act changes to TRUE the instruction starts to control the axis and the torque value will be increased according to the set change rate of the torque After the val...

Page 628: ...ErrorID ContinousUpdate Velocity InVelocity Busy Active Acceleration Deceleration Jerk Direction BufferMode Function DMC_MoveVelocity changes the velocity and makes the axis velocity valid immediately...

Page 629: ...FALSE Error TRUE when an error occurs in execution of the instruction BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to section 12 2 WORD Output Update Timing Param...

Page 630: ...one SSL Enable Error ErrorID Switch SSL_Done SSL_ErrID SSL_Err Axis1 SSL_Swh SSL_En When SSL_Swh is TRUE and SSL_En changes from FALSE to TRUE the instruction is executed When the instruction executio...

Page 631: ...UE or FALSE FALSE ContinuousUpdate Reserved RatioNumerator Gear ratio Numerator LREAL Positive number and negative number The variable value must be set When Execute changes from FALSE to TRUE RatioDe...

Page 632: ...will disconnected MC_Halt or MC_Stop can abort the motion of the slave axis 3 Refer to section 10 2 for the relation among Acceleration Deceleration and Jerk 4 Refer to section 10 3 for details on Buf...

Page 633: ...ruction MC_GearIn instruction is aborted by other instruction and CommandAborted changes to TRUE Meanwhile Busy and Active change to FALSE When Execute changes from TRUE to FALSE CommandAborted change...

Page 634: ...number the motion directions of the slave axis and master axis are opposite Programming Example Below is the example of execution of MC_GearIn instructions 1 The variable table and program Variable n...

Page 635: ...arIn1_Abt GearIn1_Err GearIn1_ErrID GearIn1_InGear MC_GearIn Master InGear GearIn2 Slave Execute Busy Active ContinuousUpdate Error ErrorID CommandAborted RatioNumerator RatioDenominator Acceleration...

Page 636: ...pectively GearIn2_Ex changes from FALSE to TRUE and meanwhile GearIn2 _Bsy changes to TRUE One period later GearIn2_Act and GearIn1_Abt change to TRUE and the slave axis gets to the target velocity ba...

Page 637: ...on execution is completed 3 The relationship between the master axis and slave axis is disconnected through the MC_GearOut instruction To stop the motion of the slave axis MC_Halt or MC_Stop instructi...

Page 638: ...MC_GearOut instruction is aborted by other instruction as Execute changes to TRUE CommandAborted changes to TRUE and meanwhile Busy and Done change to FALSE CommandAborted changes to FALSE as Execute...

Page 639: ...ute Busy Active ContinuousUpdate Error ErrorID CommandAborted RatioNumerator RatioDenominator Acceleration Deceleration Jerk BufferMode MasterValueSource GearIn_Ex Axis2 Axis1 1 1 0 10000 0 20000 0 Ge...

Page 640: ...cutes the velocity instruction and the slave axis moves by following the motion of the master axis While the master axis is executing the velocity instruction GearOut_Ex changes from FALSE to TRUE and...

Page 641: ...USINT Refer to Functions of Section 2 2 The variable value must be set When Execute changes from FALSE to TRUE Master2 The position source of axis 2 USINT Refer to Functions of Section 2 2 The variabl...

Page 642: ...RC E 0 mcSetValue 1 mcActualValue 0 When Execute changes from FALSE to TRUE Acc Specify the acceleration for the slave axis LREAL Positive number The variable value must be set When Execute changes fr...

Page 643: ...is completes the synchronization action When Error changes to TRUE When CommandAborted changes to TRUE Busy When Execute is TRUE When CommandAborted changes to TRUE When Error changes to TRUE Active W...

Page 644: ...alarms or offline Meanwhile InSync Busy and Active change to FALSE When Execute changes from TRUE to FALSE Error changes to FALSE Case 4 The instruction is still executed and the states of Busy and Ac...

Page 645: ...ccording to the set acceleration deceleration and jerk so as to realize the synchronization with the master position variations When the synchronization is achieved InSync is TRUE and the instruction...

Page 646: ..._Sta BOOL Pwr3_Bsy BOOL Pwr3_Act BOOL Pwr3_Err BOOL Pwr3_ErrID WORD CombinA MC_CombineAxes CombinA_Ex BOOL FALSE CombinA_BM MC_Buffer_Mode 1 CombinA_InSync BOOL CombinA_Bsy BOOL CombinA_Act BOOL Combi...

Page 647: ...ive EnableNegative BufferMode Error ErrorID 3 Axis3 True True Pwr3_BM Pwr3_Bsy Pwr3_Act Pwr3_Err Pwr3_ErrID Pwr3_En Pwr3_Sta MC_Power Axis Status Pwr3 Enable EnablePositive Busy Active EnableNegative...

Page 648: ...er axes start to run and meanwhile the slave also starts to run according to the sum of two master axis position variations The slave axis position variation is the sum of the two master axis position...

Page 649: ...e 11 4 4 1 The electronic cam is an analog cam of the mechanical cam through applying computer technology Compared with the mechanical cam the electronic cam has many advantages of being easy to desig...

Page 650: ...c cam operation USINT Refer to Functions of Section 2 2 The variable value must be set When Execute changes from FALSE to TRUE Slave Specify the number of the slave axis in the electronic cam operatio...

Page 651: ...he master axis as the engagement begins In other words when the master axis passes the position the slave axis starts to perform the engagement action LREAL Negative number positive number and 0 0 Whe...

Page 652: ...struction The instruction will keep going in the previous way 3 Refer to Section 10 3 for details on BufferMode Output Parameters Parameter name Function Data type Valid range InSync TRUE when the mas...

Page 653: ...FALSE and EndOfProfile changes to TRUE When Error changes to TRUE When CommandAborted changes to TRUE CommandAb orted When the instruction execution is aborted by other motion instruction When Execut...

Page 654: ...ter that Error changes from TRUE to FALSE and the value of ErrorID changes to 0 as Execute changes from TRUE to FALSE Case 3 The instruction execution still continues after Execute changes from TRUE t...

Page 655: ...ill state The time to start the engagement is when the master axis passes the position specified by the parameter ActivationPosition In different circumstances the period of time the slave axis waits...

Page 656: ...n at the time when the MC_CamIn instruction is executed The master axis position as the actual engagement starts is the value of ActivationPosition plus the master position of when the MC_CamIn instru...

Page 657: ...ement action as the master axis absolute phase is ActivationPosition The absolute axis phase is cyclic Its absolute axis phase may be equal to ActivationPosition many times in the motion of the master...

Page 658: ...struction is executed ActivationPosition Absolute cam phase When ActivationMode 3 ActivationPosition is the absolute cam phase which is the remainder got by dividing the axis absolute position by its...

Page 659: ...lue is 0 cam cycle value excluding the cam cycle value If the value of ActivationPosition exceeds the valid range an error will occur and the execution will fail as the MC_CamIn instruction is execute...

Page 660: ...at is to say the master axis position corresponds to its cam phase 0 at the time when the engagement starts After that the master cam phase will be calculated according to the corresponding relationsh...

Page 661: ...hase when the master axis is in absolute mode Offset and Scaling The cam relationship between the master axis and slave axis is preplanned But as the cam motion is executed the position offset or scal...

Page 662: ...en the actual master axis position and actual slave axis position are affected in the execution of the cam motion as below MasterOffset 0 and SlaveOffset 0 and the impact of MasterScaling and SlaveSca...

Page 663: ...se 5 The master axis position corresponding to the slave axis position is 2 times what is planned as the value of MasterScaling is 2 SlaveScaling is 1 and their offsets are 0 If it is observed from th...

Page 664: ...e 4 The engagement is ongoing Stage 5 The engagement is completed and the master axis and slave axis achieve the synchronization Stage 6 The master axis and slave axis are in the synchronous motion Th...

Page 665: ...Acceleration Deceleration and Jerk parameters For example as the engagement begins the master axis cam phase and slave axis cam phase are 80 and 180 respectively as point O below According to the def...

Page 666: ...is and master axis will be disconnected and the slave axis will stop moving immediately If the velocity at the end point of the planned cam relationship is not 0 the slave axis will constantly move at...

Page 667: ...axis the MC_CamIn instruction is aborted the cam relationship is disconnected and the slave axis decelerates till it stops MC_Home The MC_Home instruction cannot be executed on the slave axis but the...

Page 668: ...llowing example The cam curve is planned as below Key points of the cam curve No Master axis position Slave axis position Velocity Acceleration 1 0 0 0 0 2 90 100 0 0 3 180 300 0 0 4 360 0 0 0 Explana...

Page 669: ...te CamTable Periodic MasterAbsolute SlaveAbsolute SlaveOffset MasterScaling SlaveScaling MasterOffset MasterSyncPosition ActivationPosition ActivationMode StartMode 1 1 100 0 0 Axis2 Axis1 1 TRUE FALS...

Page 670: ...the start of the engagement After that the master axis will move from 0 in the positive direction under the control of the MC_MoveVelocity instruction When the master axis passes 100 the position wher...

Page 671: ...rted TRUE when the instruction is aborted BOOL TRUE FALSE Error TRUE when there is an error in the execution of the instruction BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Ple...

Page 672: ...onding error codes Meanwhile Busy and Done change to FALSE As Execute changes from TRUE to FALSE Error changes to FALSE Case 4 Execute changes from TRUE to FALSE as the instruction execution lasts for...

Page 673: ...and SlaveScaling 1 MasterOffset and SlaveOffset 0 MasterAbsolute Relative SlaveAbsolute Relative Periodic Periodic ActivationPosition Relative axis position 100 StartMode The shortest way The variable...

Page 674: ...n ActivationMode StartMode 1 1 100 0 0 Axis2 Axis1 1 TRUE FALSE FALSE 0 CamIn_Ex 0 CamIn_EndOP CamIn_Bsy CamIn_Act CamIn_Abt CamIn_Err CamIn_InSync 100 0 1 100 0 100 0 100 0 Velocity Acceleration Dece...

Page 675: ...t1 ActivationPosition As Vel_Ex changes from FALSE to TRUE at t2 the MC_MoveVelocity instruction execution starts At the moment the master axis position is 0 and the slave axis continues waiting for...

Page 676: ...nchronization is achieved at t4 and the InSync output parameter CamIn1_InSync changes from FALSE to TRUE During the synchronous cam motion in which the slave axis follows the motion of the master axis...

Page 677: ...CamChangedPoint is TRUE the instruction reads the cam point information which is after the cam point has been modified BOOL TRUE FALSE When Execute changes from FALSE to TRUE CamPointNum The number o...

Page 678: ...cute changes from FALSE to TRUE Busy changes to TRUE When the instruction execution is completed Done changes to TRUE and Busy changes to FALSE When Execute changes to FALSE Done changes to FALSE Case...

Page 679: ...REAL CamRe_SP LREAL CamRe_SV LREAL CamRe_SA LREAL 2 1 DMC_CamWritePoint Execute Done CamWr CamTable Busy Error ErrorID CamPointNum MasterPos SlavePos SlaveAcc SlaveVel DMC_CamReadPoint Execute Done Ca...

Page 680: ...eadPoint is executed When the parameter CamChangedPoint variable CamRe_CHP changes to FALSE the cam point information that the instruction reads is the cam point information before writing is done as...

Page 681: ...64 The variable value must be set When Execute changes from FALSE to TRUE CamPointNum The number of the cam point which is set UINT 1 2048 0 When Execute changes from FALSE to TRUE MasterPos The posi...

Page 682: ...sy Error Error ID Case 1 Ca se 2 Case 1 When Execute changes from FALSE to TRUE Busy changes to TRUE When the instruction execution is completed Done changes to TRUE and Busy changes to FALSE When Exe...

Page 683: ...INT 1 64 The variable value must be set When Execute changes from FALSE to TRUE Output Parameters Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BO...

Page 684: ...information effective If the DMC_CamSet instruction is executed after the MC_CamIn instruction is executed the cam curve after being modified will be effective in the next cycle If the DMC_CamSet ins...

Page 685: ...r_Done CamSe_CT CamSe_Done CamSe_ErrID CamSe_Err CamSe_Bsy DMC_CamSet Execute Done CamSe CamTable Busy Error ErrorID 2 Cam Curve There are three cam points in the cam curve Change curve C1 into curve...

Page 686: ...e_Done CamSe_Bsy CamWr_Done CamSe_Err CamSe_ErrID Slave axis position Master axis position When CamWr_Ex changes from FALSE to TRUE DMC_CamWritePoint is executed When CamWr_Done changes to TRUE settin...

Page 687: ...Enable is TRUE CamTable The number of the cam table based on which the cam relationship between the master axis and slave axis is built USINT 1 64 The variable value must be set When Enable is TRUE T...

Page 688: ...TRUE FALSE Status2 The status of the second tappet point BOOL TRUE FALSE Status3 The status of the third tappet point BOOL TRUE FALSE Status4 The status of the forth tappet point BOOL TRUE FALSE Statu...

Page 689: ...egative direction The status of every tappet point is determined by the setting of every tappet point The status of every tappet point will change to FALSE when the master axis passes the final cam po...

Page 690: ...ssed in the positive direction Passed in the negative direction 1 50 0 150 0 PositiveOn NegativeOff 2 100 0 180 0 PositiveDisable NegativeOff 3 180 0 250 0 PositiveOff NegativeOff 4 300 0 100 0 Positi...

Page 691: ...SE to TRUE when the axis passes the first tappet point in the cam curve Because the second tappet point selects PositiveDisable RTS_Sta2 is FALSE when the second tappet point is passed Because the thi...

Page 692: ...m The number of the tappet point to read UINT 1 128 The variable value must be set When Enable is TRUE Output Parameters Parameter name Function Data type Valid range Valid TRUE when the output of the...

Page 693: ...e tappet point in the positive direction the status of the tappet point which is read has no change PositiveOn ON When the master axis passes the tappet point in the positive direction the status of t...

Page 694: ...Vaild Busy Error ErrorID MasterPos TappetNum PositiveMode NegativeMode RTV_En RTV_CT RTV_TN RTV_Va RTV_MP RTV_ErrID RTV_Err RTV_Bsy RTV_NM RTV_PM 2 Table of tappet points Index Master axis position Sl...

Page 695: ...INT 1 128 The variable value must be set When Execute changes from FALSE to TRUE MasterPos Master position of the tappet point LREAL 0 positive number When Execute changes from FALSE to TRUE PositiveM...

Page 696: ...a mode as PositiveDisable PositiveOn PositiveOff or PositiveInvert When the axis runs backward the tappet point can select such a mode as NegativeDisable NegativeOn NegativeOff or NegativeInvert The m...

Page 697: ...in the cam curve If the cam curve is called by multiple MC_CamIn instructions the tappet point to be modified which is used in the programs will be changed when DMC_CamWriteTappetValue is used to chan...

Page 698: ...ive direction 1 108 0 235 0 ON Invert 2 200 0 250 0 OFF OFF 3 300 0 192 0 Invert ON When WTV_Ex changes from FALSE to TRUE DMC_CamWriteTappetValue is executed When WTV_Done changes to TRUE the executi...

Page 699: ...xis position of the tappet point LREAL 0 positive number When Execute changes from FALSE to TRUE PositiveMode Status mode of the tappet point when the axis runs forward PositiveMode _Type 0 PositiveDi...

Page 700: ...sable PositiveOn PositiveOff or PositiveInvert When the axis runs backward the added tappet point can select such a mode as NegativeDisable NegativeOn NegativeOff or NegativeInvert The meanings of mod...

Page 701: ..._CamAddTappet is used to add one tappet point in the cam curve If the cam curve is called by multiple MC_CamIn instructions the added tappet point can be used in the programs when DMC_CamAddTappet is...

Page 702: ...Invert ON There are three tappet points which have been added in the established cam curve Now add the forth tappet point using DMC_CamAddTappet instruction When CAT_Ex changes from FALSE to TRUE DMC...

Page 703: ...t USINT 1 64 The variable value must be set When Execute changes from FALSE to TRUE Output Parameters Parameter name Function Data type Valid range Done TRUE when the instruction execution is complete...

Page 704: ...Whenever the instruction is executed one time one tappet point of the largest number will be deleted Precaution Make sure that the cam curve is called for use by one MC_CamIn instruction at most if DM...

Page 705: ...position Slave axis position Passed in the positive direction Passed in the negative direction 1 108 0 235 0 PositiveOn NegativeInvert 2 200 0 250 0 PositiveOff NegativeOff 3 300 0 192 0 PositiveInver...

Page 706: ...the cut surface periodically with the rotation of the rotary cut axis Note The feed axis is to control the feed roller the rotary cut axis is to control rotary cut roller with the knife mounted on the...

Page 707: ...oller APF_RotaryCut_Init FeedRadius R2 The radius of the rotary axis i e the distance from the center of the rotary roller to the tool bit APF_RotaryCut_Init RotaryRadius N The number of knives of the...

Page 708: ...the rotary cut axis and feed axis move at a certain speed rate Their velocities are usually equal And the cutting of material is conducted in the SYN area 3 The motion controller supports the rotary...

Page 709: ...can be in the following three situations based on various cutting length 1 Short material cutting When cutting length is less than the knife roller circumference the rotary cut curve for any cycle is...

Page 710: ...ary cut axis should decelerate first in the adjustment area and then accelerate to the synchronous speed If the cutting length is far greater than rotary cut roller circumference the roller Rotary cut...

Page 711: ...ary cut function is started up the rotary cut axis will follow the feed axis to rotate according to the curve The entry position is based on the rotary cut axis For the single knife the cutting positi...

Page 712: ...e instruction APF_RotaryCut_Out is started up the system will use the curve to make the rotary cut axis break away from the rotary cut state Eventually the knife stops at the end position as shown in...

Page 713: ...ler USINT Positive number The variable value must be set When Execute changes from FALSE to TRUE FeedAxisRadius The radius of the feed axis i e the radius length of the feed roller LREAL Positive numb...

Page 714: ...s FeedAxisRadius CutLenth SyncStartPos and SyncStopPos with the same unit For example if the unit for one of the parameters is CM centimeter the units for other parameters must be CM as well Output Pa...

Page 715: ...stablished the instruction is used for initializing the radius of the rotary cut axis and feed axis cutting length SYNC area and other parameters After the instruction execution succeeds relevant para...

Page 716: ...ges from FALSE to TRUE FeedAxis The axis No of the feed axis USINT Refer to Functions of Section 2 2 The variable value must be set When Execute changes from FALSE to TRUE RotaryCutID The number for a...

Page 717: ...the instruction execution One cycle later Done changes to FALSE Busy When Execute changes to TRUE When Done changes to TRUE When Error changes to TRUE Error When an error occurs in the instruction exe...

Page 718: ...r a group of rotary cut instructions a group of rotary cut instructions use the same number Setting range 1 8 USINT 1 8 The variable value must be set When Execute changes from FALSE to TRUE Output Pa...

Page 719: ...Done changes to FALSE Busy When Execute changes to TRUE When Done changes to TRUE When Error changes to TRUE Error When an error occurs in the instruction execution or the input parameters for the ins...

Page 720: ...sKnifeNum 1 FeedAxisRadius 20 Unit units CutLenth 30 Unit units SyncStartPos 19 Unit units SyncStopPos 1 Unit unit Programming Example 1 As Pwr1_En is TRUE the servo of node address 1 turns Servo On a...

Page 721: ...Ex BOOL TRUE RotyCut_Init _Done BOOL TRUE RotyCut_Init _Bsy BOOL RotyCut_Init _Err BOOL RotyCut_Init _ErrID WORD 1 Axis1 True True Pwr1_BM Pwr1_Bsy Pwr1_Act Pwr1_Err Pwr1_ErrID Pwr1_En Pwr1_Sta MC_Pow...

Page 722: ...struction At the moment the rotary cut axis executes the rotary cut action based on the phase of the feed axis The variable table and program Variable name Data type Initial value Vel MC_MoveVelocity...

Page 723: ...ll return to the entry point and the motion of the feed axis will not impact the rotary cut axis any more The variable table and program Variable name Data type Initial value RotyCut_Out APF_RotaryCut...

Page 724: ...e instruction the servo axis can be controlled for position interpolation G Code Input Format The G code formats that the motion controller supports are listed in the followint table G code Function N...

Page 725: ...ameter to be set When one G code need be input in the CNC program in the CANopen Builder N_ must be put to the left of G code N_ means the row number of the G code in the NC program Every row has only...

Page 726: ...type Example N0 G0 X ML0 Y ML1 Z ML2 ML0 100 0 ML1 200 0 ML2 300 0 Explanation After the G code is executed axis X moves to 100 units axis Y moves to 200 units and axis Z moves to 300 units G code tra...

Page 727: ...can be set via DMC_SetG1Para instruction and modified via E F parameter E and E can be input in G code to set the different acceleration and deceleration rate Example G1 X10000 Y32105 6 E 20000 E 900...

Page 728: ...in the process It is absolute mode for NC program by default Format N_G90 Parameter Explanation N_ The row number of G code in NC program Example The initial positions of axis X and Y are both 3000 un...

Page 729: ...o switch into the absolute mode in the process Format N_G91 Parameter Explanation N_ The row number of G code in NC program Example The initial positions of axis X and Y are both 3000 units and the ax...

Page 730: ...nit data type LREAL A_ Specify the terminal position of axis A Unit unit data type LREAL B_ Specify the terminal position of axis B Unit unit data type LREAL C_ Specify the terminal position of axis C...

Page 731: ...s parameters are both default values The G codes to be executed are N0 G90 N1 G0 X50000 Y100000 After G codes are executed the Y X curve for the whole movement process is shown below O Y 50000 100000...

Page 732: ...meters are both default values The G codes to be executed are N0 G91 N1 G0 X50000 Y100000 After G codes are executed the Y X curve for the whole movement process is shown below O X Y 60000 110000 Posi...

Page 733: ...and moves straight to the target position at a given speed The instruction can control up to 8 axes and all axes start up or stop simultaneously Three axes control the position of the cutter together...

Page 734: ...tion is shown as below When two axes exist 2 2 1 2 F V V When three axes exist 2 2 2 1 2 3 F V V V For more axes F value could be calculated in the same way as above Instruction explanation 1 G1 can c...

Page 735: ...ole movement process is shown below O Y 60000 70000 Position t X 50000 Z 20000 Relative mode example The initial positions of axis X Y Z are all 20000 units and their axis parameters are all default v...

Page 736: ...ontroller Operation Manual 11 266 11 1 X Z Y 70000 80000 90000 20000 20000 20000 A B After G codes are executed the Position Time curve for the whole movement process is shown below O Y 80000 90000 Po...

Page 737: ...f the center of a circle of XZ plane Unit unit data type LREAL J_K_ Specify the coordinate position of the center of a circle of YZ plane Unit unit data type LREAL T_ Specify the quantity of full circ...

Page 738: ...dius If the input value on the right of R parameter is a positive number R the circular arc is the minor arc less than 180 degrees if the input value on the right of R parameter is a negative number R...

Page 739: ...for the start point and terminal point corresponding to Y axis coordinates the motion path is circular interpolation Otherwise it is helical interpolation Z X Y Y 0 Start point Start point Circular i...

Page 740: ...e Y X curve for the whole movement process is shown below 1000 X Y 1000 2000 3000 2000 4000 I 1000 J 2000 0 0 Example 2 Specify the center of a circle and conduct a circular interpolation in relative...

Page 741: ...ement process is shown below 2000 2000 4000 X Y 0 0 4000 Example 4 The helical interpolation with the center specified by XY plane Current position 0 0 axis parameters default values the G codes to be...

Page 742: ...Y100 Z100 I100 J100 So both of the start point and end point are 100 100 100 and the motion path is a full circle 3 N03 row of instruction is G91 and the following coordinates are relative Since X Y a...

Page 743: ...he helical interpolation with T and the center specified on XY plane Current position 0 The G codes to be executed are N00 G2 X100 Y100 Z100 I50 J50 T2 Instruction explanation The motion path is a hel...

Page 744: ...acceleration and deceleration of the cutter The positive number indicates the acceleration the negative number indicates the deceleration Unit unit second2 data type LREAL F Specify the feed speed of...

Page 745: ...ollowing full lines are the motion paths when G3 selects R and R and the arrows on the arcs refer to the motion direction The coordinate relations on different planes Please note the relations among t...

Page 746: ...e start point and terminal point corresponding to Y axis coordinates the motion is helical interpolation Otherwise it is circular interpolation on XZ plane Z Y Y 0 X Start point S t a r t p o i n t Ci...

Page 747: ...er G codes are executed the Y X curve for the whole movement process is shown below 1000 X Y 1000 2000 3000 2000 4000 I 2000 J 1000 0 0 Example 2 Specify the center of a circle and circular interpolat...

Page 748: ...ation with T in relative mode Current position 2000 0 axis parameters default values the G codes to be executed are N0 G91 N1 G17 N2 G3 X 2000 Y2000 I0 J2000 T3 Instruction explanation After G codes a...

Page 749: ...codes to be executed are N0 G17 N1 G3 X100 Y100 Z100 I50 J50 T2 Instruction explanation Since the variation of Z axis is 100 the motion path is helical curve and the projection on XY plane is a full...

Page 750: ...circular interpolation or helical interpolation plane and have no impact on the linear interpolation While the program is being executed the three work planes can be switched with each other If no pl...

Page 751: ...uction explanation After the lathe completes the processing for some phase the cutter need be stopped moving temporarily At this moment G4 can be utilized to make the cutter stop for a period of time...

Page 752: ...se stop And the following transition modes are always precise stop G51 G52 can be used for the switch in the execution process The terminal actuator will reduce its speed to 0 between G codes Format N...

Page 753: ...transition curve is an arc In this mode the speed of the first G code prevails as the entire motion speed and F can not be used for changing the speed in the motion VelOverride parameter of DMC_Carte...

Page 754: ...13 N15 G1 X1 4 Y0 8515585831 N16 G1 X1 5 Y0 9079809995 N17 G1 X1 6 Y0 9635073482 N18 G1 X1 7 Y1 018082832 N19 G1 X1 8 Y1 07165359 N20 G1 X1 9 Y1 124166756 N21 G1 X2 Y1 175570505 N22 G1 X2 1 Y1 2258141...

Page 755: ...Y1 175570505 N82 G1 X8 1 Y1 124166756 N83 G1 X8 2 Y1 07165359 N84 G1 X8 3 Y1 018082832 N85 G1 X8 4 Y0 9635073482 N86 G1 X8 5 Y0 9079809995 N87 G1 X8 6 Y0 8515585831 N88 G1 X8 7 Y0 7942957813 N89 G1 X...

Page 756: ...ction intruction G code execution will continue and then N1 row will be executed 4 When M code and G code are in the same row and M code can only be placed after G code e g N0 G1 X100 M10 D10 02 When...

Page 757: ...fter the execution of other actions is finished the variable Reset M20 changes to TRUE and M code is reset Then G code execution continues The terminal actuator starts to move to 200 50 Meanwhile the...

Page 758: ...changes from FALSE to TRUE BOOL TRUE or FALSE FALSE Pause When Pause changes from FALSE to TRUE the Cartesian coordinate robotic arm stops executing G code temporarily BOOL TRUE or FALSE FALSE Stop W...

Page 759: ...changes from TRUE to FALSE after the instruction execution is done Done changes to TRUE when the instruction execution is completed after Execute changes from TRUE to FALSE during the instruction exe...

Page 760: ...tesian coordinate robot as mathematical model The firmware of V1 01 and above supports the function 1 Pause is used for temporarily stopping the execution of G code After Pause is set to TRUE the term...

Page 761: ...ogramming Example 1 The variable table and program Variable name Data type Initial value Pwr MC_Power Axis1 USINT 1 Pwr_En BOOL FALSE Pwr_BM MC_Buffer_Mode 0 Pwr_Sta BOOL Pwr_Bsy BOOL Pwr_Act BOOL Pwr...

Page 762: ...MC_Power Axis Status Pwr1 Enable EnablePositive Busy Active EnableNegative BufferMode Error ErrorID 3 DMC_AddAxisToGroup AxesGroup Done Axis Execute Busy Error ErrorID IdenthGroup ATG Axes1 Axis1 ATG_...

Page 763: ...f G1 G2 G3 At last CC_Ex is set to TRUE and DMC_ CartesianCoordinate instruction is executed to control axis 1 and axis 2 for the interpolation based on the path planned via G codes When CC_Ex changes...

Page 764: ...meter name Function Data type Valid range Valid TRUE when the output of the instruction is valid BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Error TRUE when an err...

Page 765: ...tion is used for reading the state of M code and the data from it When the G code execution reaches where the M code set by the instruction is MFunction changes to TRUE and meanwhile MFunctionValue ou...

Page 766: ...F_En changes from TRUE to FALSE RMF_Va RMF_Bsy and RMF_MF change from TRUE to FALSE in the same cycle and the M code parameter value of RMF_MFV is not cleared When RMF_En changes from FALSE to TRUE an...

Page 767: ...variable value must be set When Execute changes from FALSE to TRUE Output Parameters Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALS...

Page 768: ...on DMC_ResetMFunction instruction resets the state of M code When G code execution reaches where M code set by the intruction is the output state of M code is TRUE and DMC_ResetMFunction instruction i...

Page 769: ...anges from FALSE to TRUE DMC_ReadMFunction instruction is executed In the same cycle RMF_Va and RMF_Bsy change from FALSE to TRUE When G code execution reaches where the set M code is RMF_MF changes f...

Page 770: ...s2 ARRAY 1 8 OF LREAL Positive number The variable value must be set When Execute changes from FALSE to TRUE Deceleration Specify the target deceleration rate Unit Unit s2 ARRAY 1 8 OF LREAL Positive...

Page 771: ...ErrorID shows corresponding error code Meanwhile Busy changes to FALSE Error changes to FALSE when Execute changes from TRUE to FALSE Function DMC_SetG0Para is used for setting the velocity accelerat...

Page 772: ...ne SG0_Bsy SG0_Err SG0_ErrID Case When SG0_Ex changes from FALSE to TRUE DMC_SetG0Para instruction is executed In the same cycle SG0_Bsy changes from FALSE to TRUE In the second cycle SG0_Done changes...

Page 773: ...te Unit Unit s2 LREAL Positive number The variable value must be set When Execute changes from FALSE to TRUE Deceleration Specify the target deceleration rate Unit Unit s2 LREAL Positive number The va...

Page 774: ...code Meanwhile Busy changes to FALSE Error changes to FALSE when Execute changes from TRUE to FALSE Function DMC_SetG1Para instruction sets the default velocity acceleration deceleration and jerk for...

Page 775: ...Bsy SG1_Err SG1_ErrID Case When SG1_Ex changes from FALSE to TRUE DMC_SetG1Para instruction is executed In the same cycle SG1_Bsy changes from FALSE to TRUE In the second cycle SG1_Done changes from F...

Page 776: ...LREAL Positive number 0 negative number 0 When Execute changes from FALSE to TRUE Y_StartPos Specify the start positionof Y axis LREAL Positive number 0 negative number 0 When Execute changes from FA...

Page 777: ...TRUE to FALSE Output Update Timing Chart Execute Done Busy Error Error ID Case1 Case 2 Case 1 When Execute changes from FALSE to TRUE Busy changes to TRUE and one cycle later Done changes to TRUE and...

Page 778: ...r ErrorID Y_StartPos Z_StartPos A_StartPos SSP Axes1 SSP_Ex SSP_X SSP_Y SSP_Z SSP_A SSP_Done SSP_Bsy SSP_Err SSP_ErrID B_StartPos C_StartPos P_StartPos Q_StartPos SSP_B SSP_C SSP_P SSP_Q 2 Timing Char...

Page 779: ...xis which is added to the axes group USINT Refer to Functions of Section 2 2 The variable value must be set When Execute changes from FALSE to TRUE Execute The instruction is executed when Execute cha...

Page 780: ...ID shows corresponding error code Meanwhile Busy changes to FALSE Error changes to FALSE and the value in ErrorID is cleared to 0 when Execute changes from TRUE to FALSE Function DMC_AddAxisToGroup is...

Page 781: ...1 8 The variable value must be set When Execute changes from FALSE to TRUE Output Parameters Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TR...

Page 782: ...TRUE Busy changes to TRUE and one cycle later Error changes to TRUE and ErrorID shows error codes and meawhile Busy changes to FALSE When Execute changes from TRUE to FALSE Error changes to FALSE and...

Page 783: ...eters Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Error TRUE wh...

Page 784: ...n the input parameters of the instruction or the axes group is not disabled and Execute changes from FALSE to TRUE Busy changes to TRUE and one cycle later Error changes to TRUE and ErrorID shows erro...

Page 785: ...accelerations of axes for quick positioning ARRAY 1 8 OF LREAL Positive number The variable value must be set When Enable changes to TRUE MoveDirectD eceleration The decelerations of axes for quick p...

Page 786: ...E Case 2 When the DMC_GroupEnable instruction is aborted during the execution CommandAborted changes to TRUE meanwhile Status and Busy change to FALSE and the axes group is disabled When Enable change...

Page 787: ...state 4 If a single axis instruction is executed during the execution of the axes group instruction and the value of BufferMode of the single axis instruction is set to 0 mcAbroting the single axis in...

Page 788: ...eserved Jerk Reserved BufferMode Specify the behavior when executing two instructions 0 Abort MC_Buffer_ Mode 0 mcAborting When Execute changes from FALSE to TRUE Note 1 Deceleration and Jerk are rese...

Page 789: ...n the instruction execution or the input parameters for the instruction are illegal When Execute changes from TRUE to FALSE Output Update Timing Chart Execute Done Busy CommandAbort Error Error ID Cas...

Page 790: ...Execute of the DMC_GroupStop instruction changes from FALSE to TRUE the instruction is executed After the instruction execution is completed the axes group instructions DMC_MoveDirectAbsolute DMC_Mov...

Page 791: ...up DMC_AddAxisToGroup0 1 1 ADDAXIS_Ex 1 ADDAXIS_Done ADDAXIS_Bsy ADDAXIS_Err ADDAXIS_ErrID 2 DMC_AddAxisToGroup AxesGroup Done Axis Execute Busy Error ErrorID IdenthGroup DMC_AddAxisToGroup1 1 2 ADDAX...

Page 792: ...cceleration Deceleration Jerk CoordSystem BufferMode 1 LA_Ex LA_Pos 20000 10000 10000 10000 LA_Done LA_Bsy LA_Act LA_Abt TransitionMode TransitionParameter Error ErrorID LA_Err LA_ErrID 1 0 0 5 DMC_Gr...

Page 793: ...ty DMC_AddAxisToGroup is executed and then DMC_GroupEnable is executed to enable the axes group After the axes group is enabled DMC_MoveLinearAbsolute is executed DMC_GroupStop is executed during the...

Page 794: ...valid Output Parameter Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FA...

Page 795: ...RUE and ErrorID shows the corresponding error code Meanwhile Busy changes to FALSE Error changes to FALSE and the value in ErrorID is cleared to 0 when Execute changes to FALSE Function DMC_GroupInter...

Page 796: ..._Err1 BOOL ADDAXIS_ErrID1 WORD DMC_GroupEnable0 DMC_GroupEnable GE_En BOOL GE_Vel ARRAY 1 8 OF LREAL 10000 10000 GE_Acc ARRAY 1 8 OF LREAL 10000 10000 GE_Dec ARRAY 1 8 OF LREAL 10000 10000 GE_Jerk ARR...

Page 797: ..._Bsy GE_Abt GE_Vel GE_Acc GE_Dec GE_Jerk DMC_GroupEnable AxesGroup Status DMC_GroupEnable0 Enable MoveDirectVelocity Busy CommandAborted Error MoveDirectAcceleration ErrorID MoveDirectDeceleration Mov...

Page 798: ...0 DMC_AddAxisToGroup is executed and then DMC_GroupEnable is executed to enable the axes group After the axes group is enabled DMC_MoveLinearAbsolute is executed DMC_GroupInterrupt is executed during...

Page 799: ...put Parameter Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Comma...

Page 800: ...en an error occurs during the instruction execution and Execute changes from FALSE to TRUE Busy changes to TRUE One period later Error changes to TRUE ErrorID shows corresponding error codes and Busy...

Page 801: ...ALSE FALSE Position The end positions of axes ARRAY 1 8 OF LREAL Positive number 0 negative number 0 When Execute changes from FALSE to TRUE CoordSyste m Reserved BufferMode Specify the buffer mode be...

Page 802: ...when an error occurs in execution of the instruction BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to section 12 2 WORD Output Update Timing Name Timing for changin...

Page 803: ...FALSE One cycle later Done changes to FALSE Function DMC_MoveDirectAbsolute is used for an axes group to conduct quick positioning and one or more axes in the axes group can be controlled The firmwar...

Page 804: ...XIS1_Err ADDAXIS1_ErrID 2 DMC_AddAxisToGroup AxesGroup Done Axis Execute Busy Error ErrorID IdenthGroup ADDAXIS2 1 2 ADDAXIS1_Ex 2 ADDAXIS2_Done ADDAXIS2_Bsy ADDAXIS2_Err ADDAXIS2_ErrID 3 1 GE_En GE_S...

Page 805: ...1 and DIRABS_Pos 2 of DMC_MoveDirectAbsolute are set to 50 000 and 100 000 respectively When DIRABS_Ex changes to TRUE DIRABS_Bsy changes to TRUE Two cycles later DIRABS_Act changes to TRUE and the a...

Page 806: ...FALSE FALSE Distance Set the distances that axes move ARRAY 1 8 OF LREAL Positive number 0 negative number 0 When Execute changes from FALSE to TRUE CoordSystem Reserved BufferMode Specify the buffer...

Page 807: ...SE Error TRUE when an error occurs in execution of the instruction BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to section 12 2 WORD Output Update Timing Name Timi...

Page 808: ...is completed Meantime Busy and Active change to FALSE One cycle later Done changes to FALSE Function DMC_MoveDirectRelative is used for an axes group to conduct quick positioning and one or more axes...

Page 809: ...1 ADDAXIS1_Done ADDAXIS1_Bsy ADDAXIS1_Err ADDAXIS1_ErrID 2 DMC_AddAxisToGroup AxesGroup Done Axis Execute Busy Error ErrorID IdenthGroup ADDAXIS2 1 2 ADDAXIS1_Ex 2 ADDAXIS2_Done ADDAXIS2_Bsy ADDAXIS2...

Page 810: ...puts DIRREL_Dis 1 and DIRREL_Dis 2 of DMC_MoveDirectRelative are set to 50 000 and 100 000 respectively When DIRREL_Ex changes to TRUE DIRREL_Bsy changes to TRUE Two cycles later DIRREL_Act changes to...

Page 811: ...UE Execute The instruction is executed when Execute changes from FALSE to TRUE BOOL TRUE or FALSE FALSE Position Specify end positions for linear interpolation ARRAY 1 8 OF LREAL Negative number Posit...

Page 812: ...TRUE Changing Execute from TRUE to FALSE during the instruction execution will have no impact on the instruction execution 2 The value of input parameter Position 1 Position 8 means the end positions...

Page 813: ...ters for the instruction are illegal When Execute changes from TRUE to FALSE Output Update Timing Chart Execute Done Busy Active CommandAbort Error Error ID Case 1 Case 2 Case 3 Case 1 When Execute ch...

Page 814: ...he previous interpolation instruction execution is completed and then execute current instruction immediately The transition velocity is the resultant velocity of the previous instruction After the in...

Page 815: ...ADDAXIS3_Err BOOL ADDAXIS3_ErrID WORD DMC_GroupEnable0 DMC_GroupEnable GE_En BOOL GE_Vel ARRAY 1 8 OF LREAL GE_Acc ARRAY 1 8 OF LREAL GE_Dec ARRAY 1 8 OF LREAL GE_Jerk ARRAY 1 8 OF LREAL GE_Status BO...

Page 816: ...XIS2_ErrID 3 DMC_AddAxisToGroup AxesGroup Done Axis Execute Busy Error ErrorID IdenthGroup ADDAXIS3 1 2 ADDAXIS1_Ex 2 ADDAXIS3_Done ADDAXIS3_Bsy ADDAXIS3_Err ADDAXIS3_ErrID 1 DMC_AddAxisToGroup AxesGr...

Page 817: ...0 20000 Y X 70000 50000 60000 Z The start positions of X axis Y axis and Z axis are all 20 000 LINABS_Pos 1 LINABS_Pos 2 and LINABS_Pos 3 of DMC_MoveLinearAbsolute are set to 50 000 60 000 and 70 000...

Page 818: ...DAXIS1_Bsy BOOL ADDAXIS1_Err BOOL ADDAXIS1_ErrID WORD ADDAXIS2 DMC_AddAxisToGroup ADDAXIS2_Done BOOL ADDAXIS2_Bsy BOOL ADDAXIS2_Err BOOL ADDAXIS2_ErrID WORD DMC_GroupEnable0 DMC_GroupEnable GE_En BOOL...

Page 819: ...ation Jerk CoordSystem BufferMode 1 LINABS1_Ex LINABS1_Pos 20000 10000 10000 10000 LINABS1_Done LINABS1_Bsy LINABS1_Act LINABS1_Abt TransitionMode TransitionParameter Error ErrorID LINABS1_Err LINABS1...

Page 820: ...and ADDAXIS2 are executed first and then DMC_GroupEnable0 is executed When the axes group is enabled LINABS1 is excecuted and then LINABS2 is executed immediately When the terminal actuator gets to th...

Page 821: ...nable0 DMC_GroupEnable GE_En BOOL GE_Vel ARRAY 1 8 OF LREAL GE_Acc ARRAY 1 8 OF LREAL GE_Dec ARRAY 1 8 OF LREAL GE_Jerk ARRAY 1 8 OF LREAL GE_Status BOOL GE_Bsy BOOL GE_Abt BOOL GE_Err BOOL GE_ErrID W...

Page 822: ...0000 10000 10000 LINA BS1_Done LINA BS1_Bsy LINA BS1_Act LINA BS1_Abt TransitionMode TransitionP arameter Error ErrorID LINA BS1_Err LINA BS1_ErrID mcBuffered 5 DMC_MoveLinearAbsolute AxesGroup Done L...

Page 823: ...f LINABS2_Pos 1 and LINABS2_Pos 2 of LINABS2 are set to 250 000 and 100 000 respectively ADDAXIS1 and ADDAXIS2 are executed first and then DMC_GroupEnable0 is executed When the axes group is enabled L...

Page 824: ...e set When Execute changes from FALSE to TRUE Execute The instruction is executed when Execute changes from FALSE to TRUE BOOL TRUE or FALSE FALSE Distance Set the distances that axes move ARRAY 1 8 O...

Page 825: ...SE to TRUE Changing Execute from TRUE to FALSE during the instruction execution will have no impact on the instruction execution 2 The value of input parameter Distance 1 Distance 8 means the end posi...

Page 826: ...Timing Chart Execute Done Busy Active CommandAbort Error Error ID Case1 Case2 Case 3 Case 1 When Execute changes from FALSE to TRUE Busy changes to TRUE Two cycles later Active changes to TRUE When th...

Page 827: ...immediately The transition velocity is the resultant velocity of the previous instruction After the instruction switch the terminal actuator conducts the smooth transition and then makes the linear mo...

Page 828: ...sy BOOL ADDAXIS3_Err BOOL ADDAXIS3_ErrID WORD DMC_GroupEnable DMC_GroupEnable GE_En BOOL GE_Vel ARRAY 1 8 OF LREAL GE_Acc ARRAY 1 8 OF LREAL GE_Dec ARRAY 1 8 OF LREAL GE_Jerk ARRAY 1 8 OF LREAL GE_Sta...

Page 829: ...XIS1 1 1 AD DAXIS1_Ex 1 AD DAXIS1_Done AD DAXIS1_Bsy AD DAXIS1_Err AD DAXIS1_ErrID 4 GE_En GE_Status GE_Bsy GE_Abt GE_Vel GE_Acc GE_Dec GE_Jerk DM C_GroupEnable AxesGroup Status DM C_GroupEnable0 Enab...

Page 830: ...00 50000 60000 Z The start positions of X axis Y axis and Z axis are all 20 000 LINREL_Dis 1 LINREL_Dis 2 and LINREL_Dis 3 of DMC_MoveLinearRelative are set to 30 000 40 000 and 50 000 respectively Wh...

Page 831: ...S1_ErrID WORD ADDAXIS2 DMC_AddAxisToGroup ADDAXIS2_Done BOOL ADDAXIS2_Bsy BOOL ADDAXIS2_Err BOOL ADDAXIS2_ErrID WORD DMC_GroupEnable0 DMC_GroupEnable GE_En BOOL GE_Vel ARRAY 1 8 OF LREAL GE_Acc ARRAY...

Page 832: ...1 LINRE L1_Ex LINREL1_Dis 20000 10000 10000 10000 LI NREL1_Done LI NREL1_Bsy LI NREL1_Act LI NREL1_Abt TransitionMode TransitionParameter Error ErrorID LI NREL1_Err LI NREL1_ErrID mcBuffered 5 DMC_Mo...

Page 833: ...executed immediately When the terminal actuator gets to 100 000 100 000 in the coordinate system LINREL1_Done changes to TRUE Meanwhile LINREL2_Act changes to TRUE and LINREL2 starts to execute At the...

Page 834: ...RRAY 1 8 OF LREAL GE_Acc ARRAY 1 8 OF LREAL GE_Dec ARRAY 1 8 OF LREAL GE_Jerk ARRAY 1 8 OF LREAL GE_Status BOOL GE_Bsy BOOL GE_Abt BOOL GE_Err BOOL GE_ErrID WORD LINREL1 DMC_MoveLinearRelative LINREL1...

Page 835: ...000 10000 LINREL1_Done LINREL1_Bsy LINREL1_Act LINREL1_Abt TransitionMode TransitionParameter Error ErrorID LINREL1_Err LINREL1_ErrID mcBuff ered 5 DMC_MoveL inearRelat ive AxesGroup Done LINREL2 Exec...

Page 836: ...100 000 LINREL2_Dis 1 and LINREL2_Dis 2 of LINREL2 are set 150 000 and 0 ADDAXIS1 and ADDAXIS2 are executed first and then DMC_GroupEnable0 is executed When the axes group is enabled LINREL1 is excecu...

Page 837: ...ameter name Function Data type Valid range Default Validation timing AxesGroup The axes group number USINT 1 8 The variable value must be set When Execute changes from FALSE to TRUE Execute The instru...

Page 838: ...o TRUE Acceleration Set the maximum acceleration Unit Unit second2 LREAL Positive number 0 When Execute changes from FALSE to TRUE Deceleration Set the maximum deceleration Unit Unit second2 LREAL Pos...

Page 839: ...pleted BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE FALSE Active TRUE when the instruction is controlling axes BOOL TRUE FALSE CommandAborted TRUE when the instruction ex...

Page 840: ...hanges to TRUE and ErrorID shows corresponding error codes and meanwhile Busy and Active change to FALSE When Execute changes from TRUE to FALSE Error changes to FALSE Case 3 After Execute changes fro...

Page 841: ...ue of the center on basis of the start point on X aixs AuxPoint 2 is the offset value of the center on basis of the start point on Z aixs Helical interpolation Center I K Start point End point X Y Z Z...

Page 842: ...he value of AuxPoint 1 is the radius of the circle on XY plane and the value of AuxPoint 2 is meaningless If the value of AuxPoint 1 is greater than 0 it is a minor arc If the value of AuxPoint 1 is l...

Page 843: ...ane and the value of AuxPoint 2 is meaningless Start point End point X Y Z Z X Y R a d i u s R Helical interpolation X1 Y1 Z1 In the figure above Radius R AuxPoint 1 Coordinates for end point X EndPoi...

Page 844: ...mcBuffered 1 Current instruction will wait and not be executed till the previous interpolation instruction execution is finished mcBlendingPrevious 3 The transition between current instruction and pr...

Page 845: ...Y 1 8 OF LREAL GE_Acc ARRAY 1 8 OF LREAL GE_Dec ARRAY 1 8 OF LREAL GE_Jerk ARRAY 1 8 OF LREAL GE_Status BOOL GE_Bsy BOOL GE_Abt BOOL GE_Err BOOL GE_ ErrID WORD CIRABS DMC_MoveCircularAbsolute CIRABS_E...

Page 846: ...e CIRABS Execute CircMode Busy Active Comma ndAborte d AuxPoint End Point MultiTurn PathChoice Velocity Acceleration 1 CIRABS_Ex CIRABS_Mode CIR ABS_Au xp CIR ABS_Endp C IRABS_T CIRABS_PC 20000 C IRAB...

Page 847: ...S_Endp 2 is set to 2000 and the value of CIRABS_Mode is set to 0 Point B is the start point of the arc with coordinates 1000 3000 Point A is the center of the circle where the arc is with the coordina...

Page 848: ...Parameter name Function Data type Valid range Default Validation timing AxesGroup The axes group number USINT 1 8 The variable value must be set When Execute changes from FALSE to TRUE Execute The in...

Page 849: ...second LREAL Positive number 0 When Execute changes from FALSE to TRUE Acceleration Set the maximum acceleration Unit Unit second2 LREAL Positive number 0 When Execute changes from FALSE to TRUE Dece...

Page 850: ...nd Jerk 5 For details on BufferMode refer to section 10 3 Output Parameters Parameter name Function Data type Valid range Done TRUE when the instruction execution is completed BOOL TRUE FALSE Busy TRU...

Page 851: ...ALSE to TRUE and an error occurs such as error in state machine of the axes group Error changes to TRUE and ErrorID shows corresponding error codes and meanwhile Busy and Active change to FALSE When E...

Page 852: ...is the offset value of the center on basis of the start point on X aixs AuxPoint 2 is the offset value of the center on basis of the start point on Z aixs Helical interpolation Center I K Start point...

Page 853: ...is the radius of the circle on XY plane and here the value of AuxPoint 2 is meaningless If the value of AuxPoint 1 is greater than 0 it is a minor arc If the value of AuxPoint 1 is less than 0 it is...

Page 854: ...Y plane and here the value of AuxPoint 2 is meaningless Start point End point X Y Z Z X Y R a d i u s R Helical interpolation X1 Y1 Z1 In the figure above Radius R AuxPoint 1 Coordinates for end point...

Page 855: ...ion mcBuffered 1 Current instruction will wait and not be executed till the previous interpolation instruction execution is finished mcBlendingPrevious 3 The transition between current instruction and...

Page 856: ...GE_En BOOL GE_Vel ARRAY 1 8 OF LREAL GE_Acc ARRAY 1 8 OF LREAL GE_Dec ARRAY 1 8 OF LREAL GE_Jerk ARRAY 1 8 OF LREAL GE_Status BOOL GE_Bsy BOOL GE_Abt BOOL GE_Err BOOL GE_ErrID WORD CIRREL DMC_MoveCirc...

Page 857: ...e CI RREL Execute CircMode Busy Active Comm andAborted AuxP oint EndP oint Mult iTurn PathChoice Velocity Acceleration 1 CIRREL_Ex CIRR EL_Mode CI RREL_Auxp CIRREL_Endp CIRREL_T CIRREL_PC 20000 CIRRE...

Page 858: ...000 The value of CIRREL_Endp 2 is set to 1000 The value of CIRREL_Mode is set to 0 Point B is the start point of the arc with coordinates 1000 3000 Point A is the center of the circle where the arc is...

Page 859: ...r USINT 1 8 The variable value must be set When Enable changes to TRUE Enable The instruction is executed when Enable changes from FALSE to TRUE BOOL TRUE or FALSE FALSE VelFactor Override value unit...

Page 860: ...be changed including DMC_MoveDirectAbsolute DMC_MoveDirectRelative DMC_MoveLinearAbsolute DMC_MoveLinearRelative DMC_MoveCircularAbsolute and DMC_MoveCircularRelative 2 The unit of VelFactor is 100 me...

Page 861: ...ion and the target velocity will return to 100 if the modified value of Velfactor exceeds valid range 9 When Enable changes to FALSE the axes group will speed up or slow down regarding VelFactor 100 a...

Page 862: ...usy Active CommandAborted Velocity Acceleration Deceleration Jerk CoordSystem BufferMode 1 LINABS_Ex LINABS_Pos 10000 10000 10000 10000 1 LINABS_Done LINABS_Bsy LINABS_Act LINABS_Abt TransitionMode Tr...

Page 863: ...is set to TRUE the DMC_GroupSetOverride instruction takes effect and the target velocity of the axes group becomes the new target velocity When SetOv_En changes to FALSE the target velocity of the ax...

Page 864: ...erved Output Parameters Parameter name Function Data type Valid range Valid TRUE when the output of the instruction is valid BOOL TRUE FALSE Busy TRUE when the instruction is being executed BOOL TRUE...

Page 865: ...uction and Enable changes from FALSE to TRUE Busy changes to TRUE one cycle later Error changes to TRUE and ErrorID shows error codes and meanwhile Busy changes to FALSE When Enable changes from TRUE...

Page 866: ...is to be controlled USINT Refer to Axis No Ranges that Controllers Correspond to The variable value must be set When Execute changes from FALSE to TRUE Execute The instruction is executed when Execute...

Page 867: ...SE ErrorID Contains error codes when an error occurs Please refer to the section 12 2 for corresponding error codes WORD Output Update Timing Parameter Name Timing for changing to TRUE Timing for chan...

Page 868: ...RUE to FALSE Function 1 DMC_ControlAxisByPos instruction is executed by changing Execute from FALSE to TRUE Changing Execute of the instruction from TRUE to FALSE during the instruction execution does...

Page 869: ...ALSE Pwr_Bsy BOOL FALSE Pwr_Act BOOL FALSE Pwr_Err BOOL FALSE Pwr_ErrID WORD 0 CAByPos DMC_ControlAxisByPos CAByPos_Ex BOOL FALSE CAByPos_Ex_Pos LREAL CAByPos_Ex_Vel LREAL 1 CAByPos_Ex_Acc LREAL 1 CAB...

Page 870: ...ity Position ContinousUpdate Execute Axis CAByPos_Ex_Dec CAByPos_Ex_Acc CAByPos_Ex_Vel Jerk CAByPos_Ex CAByPos_Ex_Jerk CAByPos CAByPos_Ex changes to TRUE after the axis is power on Meanwhile CAByPos_B...

Page 871: ...Input Parameters Parameter name Function Data type Valid range Default Validation timing Execute The instruction is executed when Execute changes from FALSE to TRUE BOOL TRUE or FALSE FALSE Pause Par...

Page 872: ...nstruction is parsing the CNC file BOOL TRUE FALSE Error TRUE when an error occurs in the instruction execution BOOL TRUE FALSE ErrorID Contains the error code when an error occurs Please refer to sec...

Page 873: ...changes to TRUE Several cycles later Active changes to TRUE When parsing the CNC file is complete Done changes to TRUE Meanwhile Busy and Active change to FALSE When Execute changes to FALSE Done cha...

Page 874: ...on the instruction execution by changing Execute of the instruction from TRUE to FALSE in the course of the instruction execution 2 Changing Execute from FALSE to TRUE once more during the execution o...

Page 875: ...OOL FALSE CAByPos1_Ex_Vel LREAL 1 CAByPos1_Ex_Acc LREAL 1 CAByPos1_Ex_Dec LREAL 1 CAByPos1_Ex_Jerk LREAL 1 CAByPos1_InC BOOL FALSE CAByPos1_Bsy BOOL FALSE CAByPos1_Act BOOL FALSE CAByPos1_Abt BOOL FAL...

Page 876: ..._Ex_Pos Axis 1 CAByPos_ErrID CAByPos_Err CAByPos_Abt CAByPos_Act CAByPos_Bsy CAByPos_InC ErrorID Error CommandAborted Active Busy InControl Deceleration Acceleration Velocity Position ContinousUpdate...

Page 877: ...r of the row in which the CNC file is being parsed currently NC_Px NC_Py NC_Pz NC_Pa NC_Pb NC_Pc NC_Pp and NC_Pq output the positions of axes respectively after the CNC file is parsed in the current c...

Page 878: ...DVP 15MC Series Motion Controller Operation Manual 11 408 11 1 MEMO...

Page 879: ...12 1 12 Troubleshooting Table of Contents 12 1 Explanation of LED Indicators 12 2 12 2 Table of Error IDs in Motion Instructions 12 8 12 3 System Trouble Diagnosis through System Error Codes 12 19...

Page 880: ...in RUN state No correction LED OFF DVP 15MC series motion controller is in STOP state Switch PLC to the RUN state according to demand ERR LED ERR LED indicates the error state of DVP 15MC series motio...

Page 881: ...linking CAN1 CANopen communication port is in Preoperational state 1 Check if CANopen network bus cable connection is correct 2 Check if the CANopen bus cable is Delta standard CANopen cable 3 Check i...

Page 882: ...en bus have connected a terminal resistor respectively 4 Check if the baud rate of CANopen port is the same as that of other slaves 5 Check if the interference around CANopen bus cable is too strong R...

Page 883: ...e state of normal work No correction Red light double flashes Some slave is offline 1 Check if the Motion bus cable is Delta standard CANopen cable 2 Check if the two ends of Motion bus have connected...

Page 884: ...ved via the second Ethernet port of DVP 15MC series motion controller OFF The second Ethernet port of DVP 15MC series motion controller is not connected to the Ethernet network RS232 LED RS232 LED the...

Page 885: ...l input points are ON or OFF LED state Indication Red light ON Input point is ON LED OFF Input point is OFF Output point LED There are 8 output point LED indicators for showing if DVP 15MC series moti...

Page 886: ...the value of the input variable BufferMode into that which can be set in the instruction 1009 4105 The input value for reference position type is wrong Modify the value of the input variable Reference...

Page 887: ..._TouchProbe Modify the value of TriggerInput of the instruction into one value which has not been used yet 101A 4122 Windowonly of DMC_TouchProbe is abnormal Modify the values of Firstops and Lastops...

Page 888: ...4156 The value of MasterOffset of MC_CamIn is greater than the master axis cam cycle range Modify the value of MasterOffset into that between the negative number and positive number of the master axi...

Page 889: ...h are correct 104D 4173 The position capture instruction did not receive the capture signal within the window range and the capture failed Ensure that the window range is set properly 104E 4174 G code...

Page 890: ...ervo is OK 3004 12292 The command position exceeds the limit position set in the software Check if the set software limit position is proper or disable the software limit position 3005 12293 The proce...

Page 891: ...34832 Diagnosis type error Modify diagnosis type 8818 34840 The axis to be diagnosed has not been configured Configure the axis before the diagnosis 8820 34848 Diagnosis type error Modify diagnosis ty...

Page 892: ...lue within the allowed range 9017 36887 The read data length configured for RS232 PLC link exceeds the allowed maximum value Modify the read data length configured for RS232 PLC link as a value within...

Page 893: ...art address of the local buffer of word type for data reading is within the allowed word register area but can not meet the alignment of word register addresses Valid range MW0 MW32767 Modify the star...

Page 894: ...he allowed range 9101 37121 Ethernet physical connection is disconnected Check if the network cable connection is proper 9102 37122 TCP remote IP address error Modify the setting for the remote IP add...

Page 895: ...xceeds the limit Modify the length of sent data within the allowed range 9118 37144 The parameter value for the length of received TCP UDP data exceeds the limit Modify the length of received data wit...

Page 896: ...HoldTime value as a non negative number A820 43040 The tappet point count reaches the maximum value Make sure that the tappet point count does not exceed the maximum value A821 43041 The MasterPos val...

Page 897: ...ailed in the motion area 100B 4107 The access to flash failed in the Task area 100C 4108 The access to flash failed in the CANopen communication 100D 4109 The access to flash failed in the hardware co...

Page 898: ...e program 1028 4136 System configuration file reading failed Contact local technicians if the problem still exists after re downloading the program 1029 4137 Task configuration file reading failed Con...

Page 899: ...oading the program and repowering the product 300B 12299 It is detected that data types are illegal in the program Update the software if the error still exists after re compiling and re downloading t...

Page 900: ...whether there is any infinite loop in the program which the task calls 3 Redownload it after modifying the program 3052 12370 The actual time for executing the priority2 task exceeds the set watchdog...

Page 901: ...e is any infinite loop in the program which the task calls 3 Redownload it after modifying the program 305B 12379 The actual time for executing the priority 11 task exceeds the set watchdog timeout ti...

Page 902: ...task exceeds the set watchdog timeout time 1 Reset the watchdog time to a larger value for the task 2 Check whether there is any infinite loop in the program which the task calls 3 Redownload it after...

Page 903: ...the SD card is proper 2 Check if the SD card is damaged 4003 16387 The file in the SD card is read only Modify the file in the SD card as the read write file 4100 16640 The data in the project backup...

Page 904: ...ally connected is inconsistent with that configured in the software Make sure that the module acutally connected to the right side of the PLC is consistent with that configured in the software and the...

Page 905: ...Format in ASCII Mode A 2 A 2 Message Format in RTU Mode A 5 A 3 Modbus Function Codes Supported A 7 A 4 Modbus Exception Response Code Supported A 7 A 5 Introduction to Modbus Function Codes A 8 A 6 T...

Page 906: ...16 42 16 43 16 44 16 45 16 46 ADR Communication address The valid range of communication address 0 254 Communication address 0 means the broadcast message is sent to all slaves and the slaves which h...

Page 907: ...0 0 30 Data number Counted by word 2 0 30 0 30 0 30 2 32 LRC check code 16 FA F 46 A 41 End character 1 CR 0D End character 0 LF 0A Response message Field name Field character ASCII code corresponding...

Page 908: ...adding 1 to the final inverse value For instance LRC check code value 16 FA The method of calculating LRC check code value 16 01 16 03 16 00 16 00 16 00 16 02 16 06 the result 16 FA is got by getting...

Page 909: ...the slave with the communication address of 16 the address of the slave is set as 16 10 since decimal 16 is equal to hexadecimal 10 Function code and data The data format is determined by function cod...

Page 910: ...it Step 4 Check the value of the lowest bit in CRC register If the value is 0 repeat the action of step 3 if 1 make XOR operation between the content in CRC register and hex A001 and then store the re...

Page 911: ...r value QX 16 06 Write one single word register value MW QW 16 0F Write multiple bit register value the data of 256 bits at most can be written at a time QX 16 10 Write multiple word register value th...

Page 912: ...Byte Byte0 Modbus ID Single byte Byte1 Function code Single byte Byte2 Read the number of addresses of word registers in DVP 15MC series motion controller Counted by Byte Single byte Byte3 The addres...

Page 913: ...gh byte Byte5 Low byte Byte6 Low byte of CRC check sum Low byte Byte7 High byte of CRC check sum High byte Data structure of a response message Byte NO Name Byte Byte0 Modbus ID Single byte Byte1 Func...

Page 914: ...byte The address value written into controller s word register High byte Low byte Byte n The address value written into controller s word register High byte Byte n 1 Low byte Byte n 2 Low byte of CRC...

Page 915: ...s to be read High byte Byte3 Low byte Byte4 The number of controller s bit registers to be read High byte Byte5 Low byte Byte6 Low byte of CRC check sum Low byte Byte7 High byte of CRC check sum High...

Page 916: ...multiple bit register values Data structure of a request message Byte NO Name Byte Byte0 Modbus ID Single byte Byte1 Function code Single byte Byte2 The start address of controller s bit registers wh...

Page 917: ...ia function code 02 The address of QX2 0 is 16 A010 Suppose QX2 0 QX2 7 1000 0001 QX3 0 QX3 4 1 0001 Request message 01 02 A0 10 00 0D 9A 0A Response message 01 02 02 81 11 19 E4 Function code 16 05 w...

Page 918: ...es motion controller is set to TRUE and the address of QX0 0 is set to 16 A000 via function code 05 Request message 01 05 A0 00 FF 00 AE 3A Response message 01 05 A0 00 FF 00 AE 3A Function code 16 0F...

Page 919: ...Byte4 High byte of CRC check sum High byte Note How many bytes of data in the request message depend on the number of bit registers in the request message Example The value of QX0 0 QX0 7 is set to 10...

Page 920: ...DVP 15MC Series Motion Controller Operation Manual A 16 A MEMO...

Page 921: ...ntents B 1 Modbus TCP Message Structure B 2 B 2 Modbus Function Codes Supported in Modbus TCP B 2 B 3 Exception Response Code in Modbus TCP B 3 B 4 Modbus Function Codes in Modbus TCP B 3 B 5 Register...

Page 922: ...byte The number of bytes of Modbus data is determined by function code B 2 Modbus Function Codes Supported in Modbus TCP Modbus function codes which DVP 15MC series motion controller supports Functio...

Page 923: ...est message data structure Byte NO Name Byte Byte0 Transaction identifier High byte Byte1 Low byte Byte2 Protocol identifier High byte Byte3 Low byte Byte4 Modbus data length High byte Byte5 Low byte...

Page 924: ...80 function code Single byte Byte8 Exception response code Single byte Example To read the content value in the addresses 16 0000 and 16 0001 inside DVP 15MC series motion controller via function cod...

Page 925: ...h byte Byte3 Low byte Byte4 Modbus data length High byte Byte5 Low byte Byte6 Modbus ID Single byte Byte7 Function code Single byte Byte8 The address of a word register where to write a value High byt...

Page 926: ...dbus data length High byte Byte5 Low byte Byte6 Modbus ID Single byte Byte7 Function code Single byte Byte8 The start address of word registers where to write values High byte Byte9 Low byte Byte10 Th...

Page 927: ...byte Byte7 16 80 function code Single byte Byte8 Exception response code Single byte Note How many bytes of data in a response message depend on the number of read register addresses in DVP 15MC seri...

Page 928: ...gisters High byte Byte9 Low byte Byte10 The number of read bit registers High byte Byte11 Low byte Response message data structure Byte NO Name Byte Byte0 Transaction identifier High byte Byte1 Low by...

Page 929: ...on code 02 16 A010 is the address of QX2 0 Suppose that QX2 0 QX2 7 1000 0001 and QX3 0 QX3 4 10001 Request message 00 00 00 00 00 06 01 02 A0 10 00 0D Response message 00 00 00 00 00 06 01 02 02 81 1...

Page 930: ...ponse message data structure Byte NO Name Byte Byte0 Transaction identifier High byte Byte1 Low byte Byte2 Protocol identifier High byte Byte3 Low byte Byte4 Modbus data length High byte Byte5 Low byt...

Page 931: ...egisters where to write values High byte Byte11 Low byte Byte12 How many bytes occupied by bit registers where to write values Single byte Byte13 The value written in a bit register Single byte Byte n...

Page 932: ...byte Example Set QX0 0 QX0 7 1000 0001 via function code 0F and set the address of QX0 0 to 16 A000 in DVP 15MC series motion controller Request message 00 00 00 00 00 0A 01 0F A0 00 00 08 01 81 Resp...

Page 933: ...C 1 C CANopen Protocol Table of Contents C 1 Node States C 4 C 2 Network Management NMT C 6 C 3 PDO Process Data Object C 6 C 4 SDO Service Data Object C 8...

Page 934: ...able registers CiA 302 the recommendations for cables and connectors CiA 303 1 and SI units and prefix representations CiA 303 2 In the OSI model the relation between the CAN standard and the CANopen...

Page 935: ...hey receive the command sent by the master They do act until they receive the synchronous message In this way many devices can act synchronously The format of the SYNC message COB ID 80 hex Emergency...

Page 936: ...onal state 3 6 The remote node is started 4 7 The device enters the Pre operational state 5 8 The remote node is stopped 9 10 11 The application layer is reset 12 13 14 The communication is reset 15 A...

Page 937: ...nly supports Heartbeat For example the master can detect the disconnection of the slave only after the slave enables the Heartbeat service The Heartbeat principle is illustrated as follows The Heartbe...

Page 938: ...xPDO sent by the producer device And the PDO the consumer receives is called PDO RxPDO which the consumer device receives Every PDO is described with two objects in the object dictionary The PDO commu...

Page 939: ...data in the PDO has to be mapped from the object dictionary The following is an example of the PDO mapping The data format for RxPDO and TxPDO is as follows COB ID Byte 0 Byte 1 Byte 2 Byte 3 Byte 4...

Page 940: ...quest message and response message can be differentiated according to their different COB IDs The SDO can transmit the data in any length If the data length is more than 4 bytes the data has to be tra...

Page 941: ...D 1 D Explanation of Homing Modes Table of Contents D 1 Explanation of Homing Modes D 2...

Page 942: ...phase speed The motion direction changes and the axis moves at the second phase speed when the axis encounters that the negative limit switch is ON Where the first Z pulse is met is the home position...

Page 943: ...s that the positive limit switch is ON Where the first Z pulse is met is the home position while the positive limit switch is OFF Circumstance 2 MC_Home instruction is executed when the positive limit...

Page 944: ...witch is OFF Mode 4 Circumstance 1 When the home switch is OFF MC_Home instruction is executed and the axis moves in the positive direction at the first phase speed The axis moves at the second phase...

Page 945: ...witch is OFF Mode 6 Circumstance 1 When the home switch is ON MC_Home instruction is executed and the axis moves in the positive direction at the second phase speed When the home switch is OFF the mot...

Page 946: ...he second phase speed Where the first Z pulse is met is the home position when the home switch is OFF Circumstance 3 When the home switch is OFF MC_Home instruction is executed and the axis moves in t...

Page 947: ...nce 3 When the home switch is OFF MC_Home instruction is executed and the axis moves in the positive direction at the first phase speed The motion direction changes and the axis moves at the first pha...

Page 948: ...anges and the axis moves at the second phase speed when the home switch is OFF And where the first Z pulse is met is the home position Circumstance 3 MC_Home instruction is executed and the axis moves...

Page 949: ...instruction is executed and the axis moves in the positive direction at the first phase speed when the home switch is OFF The motion direction changes and the axis moves at the first phase speed when...

Page 950: ...pulse is met is the home position while the home switch is OFF Circumstance 3 MC_Home instruction is executed and the axis moves in the negative direction at the first phase speed while the home switc...

Page 951: ...3 MC_Home instruction is executed and the axis moves in the negative direction at the first phase speed while the home switch is OFF The motion direction changes and the axis moves at the first phase...

Page 952: ...ges and the axis moves at the second phase speed while the home switch is OFF And where the first Z pulse is met is the home position Circumstance 3 MC_Home instruction is executed and the axis moves...

Page 953: ...motion direction changes again and the axis moves at the second phase speed when the home switch is ON Where the first Z pulse is met is the home position while the home switch is OFF Homing depending...

Page 954: ...17 Mode 18 Homing which depends on the positive limit switch Circumstance 1 MC_Home instruction is executed when the positive limit switch is OFF and the axis moves in the positive direction at the f...

Page 955: ...ode 20 Circumstance 1 MC_Home instruction is executed when the home switch is OFF and the axis moves in the positive direction at the first phase speed Where the servo is is the home position when the...

Page 956: ...in the positive direction at the second phase speed The motion direction changes and the axis moves at the second phase speed once the home switch becomes OFF Where the axis stands is the home positi...

Page 957: ...is executed while the home switch is OFF The axis moves in the positive direction at the first phase speed The motion direction changes and the axis moves at the first phase speed when the home switc...

Page 958: ...se speed when the home switch is OFF Where the axis stands is the home position when the home switch is ON Circumstance 3 MC_Home instruction is executed while the home switch is OFF The axis moves in...

Page 959: ...d while the home switch is ON and the axis moves in the positive direction at the second phase speed The motion direction changes and the axis moves at the second phase speed when the home switch is O...

Page 960: ...tion when the home switch is OFF Circumstance 3 MC_Home instruction is executed while the home switch is OFF The axis moves in the positive direction at the first phase speed The motion direction chan...

Page 961: ...is stands is the home position when the home switch is OFF Circumstance 3 MC_Home instruction is executed while the home switch is OFF The axis moves in the negative direction at the first phase speed...

Page 962: ...se speed when the home switch is OFF Where the axis stands is the home position when the home switch is ON Circumstance 3 MC_Home instruction is executed while the home switch is OFF The axis moves in...

Page 963: ...ecuted while the home switch is ON and the axis moves in the negative direction at the second phase speed The motion direction changes and the axis moves at the second phase speed when the home switch...

Page 964: ...position when the home switch is OFF Circumstance 3 MC_Home instruction is executed while the home switch is OFF The axis moves in the negative direction at the first phase speed The motion direction...

Page 965: ...s is the home position once the first Z pulse is met Mode 34 In mode 34 MC_Home instruction is executed and the axis moves at the second phase speed in the positive direction And the place where the a...

Page 966: ...DVP 15MC Series Motion Controller Operation Manual D 26 D MEMO...

Page 967: ...E 1 E List of Accessories Table of Contents E 1 Accessories for CANopen Communication E 2 E 2 Accessories for PROFIBUS DP Communication E 4 E 3 Accessories for DeviceNet Communication E 4...

Page 968: ...urchase is 305M per reel and mimimum length is 1M with metre as the unit 2 UC DN01Z 01A and UC DN01Z 02A can be used as the main line cable as well as the branch line cable The maximum communication d...

Page 969: ...e TAP CN02 TB1 TB2 TB5 TB3 TB4 Thick Cable Thick Cable Thin Cable Thin Cable V V V H H H S S S L L L V V V V V H H S S L L V V 121 Thin Cable TAP CN03 TB 1 TB 2 Th ick C ab le Th ick C ab le V V H H S...

Page 970: ...hown below TAP TR01 E 2 Accessories for PROFIBUS DP Communication Connector 1 2 3 Model UN 03PF 01A UN 03PF 02A UN 03PF 03A Connector Male DB9 connector Male DB9 connector Male DB9 connector Program p...

Page 971: ...communication distance for UC DN01Z 02A m 100 100 100 3 The maximum communication distance at a transmission speed is regulated in the DeviceNet protocol The relationships between maximum communicatio...

Page 972: ...As required in the DeviceNet protocol the two ends of the DeviceNet communication cable should connect a terminal resistor of 120 1 4W respectively 1 The terminal resistor connected to the start of t...

Reviews: