Professional Documents
Culture Documents
Turin Robot User Manual
Turin Robot User Manual
Turin Robot User Manual
User Manual
V2023
Catalog
1 Safety ...................................................................................................................................................1
1.1 About Safety .............................................................................................................................1
1.2 Applicable Safety Standards .....................................................................................................2
1.3 Safety Terminology ...................................................................................................................3
1.3.1 Safety Signals In the Manual .........................................................................................3
1.3.2 Safety sign on the manipulator tag ...............................................................................3
1.3.3 Danger ...........................................................................................................................6
1.3.3.1 Danger - Make sure the main power is off! .......................................................6
1.3.3.2 Danger - moving the manipulator can have fatal consequences! ..................... 6
1.3.3.3 Danger- -A robot without a shaft brake may be dangerous! .............................7
1.3.4 Warning .........................................................................................................................7
1.3.4.1 Warning-This unit is susceptible to static electricity! ........................................7
1.3.5 What is an emergency stop? .........................................................................................7
1.3.6 What is a safe stop? ...................................................................................................... 8
1.3.7 What is safety protection? ............................................................................................8
1.3.8 How to use the Teach Pendant device safely? ..............................................................8
1.4 How to handle an emergency? ................................................................................................ 8
1.4.1 Stop the system .............................................................................................................8
1.4.2 Release the robot brake ..............................................................................................10
1.4.3 Fire fighting ................................................................................................................. 10
1.4.4 Recovery from the emergency stop state ...................................................................10
1.4.5 Return to the programming path ................................................................................11
1.5 Safety matters at work ...........................................................................................................12
1.5.1 Overview ..................................................................................................................... 12
1.5.2 Self-safety ................................................................................................................... 12
1.5.3 Disposal of Teach Pendant .......................................................................................... 12
1.5.4 Safety Tools ................................................................................................................. 13
1.5.5 Safety in manual mode ............................................................................................... 13
1.5.6 Security in automatic mode ........................................................................................14
2 Product composition .........................................................................................................................15
2.1 The Teaching Instrument ....................................................................................................... 15
2.1.1 Appearance of the Device ...........................................................................................15
2.1.2 Key function description ............................................................................................. 15
2.1.3 Teach Pendant of the interface layout ........................................................................16
2.2 TRC 3-A04 control cabinet ..................................................................................................... 16
2.2.1. Appearance of the control cabinet ............................................................................ 16
2.2.2 Adaptive Robot--STG030 .............................................................................................20
2.2.3Adaptive Robot--STG100 ............................................................................................. 21
2.2.4 Adaptive Robot--STH100 .............................................................................................21
2.2.5 Adaptive Robot--STW030 ........................................................................................... 23
2.2.6 Adaptive Robot--STW060 ........................................................................................... 24
2.3 TRC 3-A06 control cabinet ..................................................................................................... 25
2.3.1 Appearance of the control cabinet ............................................................................. 25
2.3.2 Adaptive Robot--STH200 .............................................................................................28
2.3.3 Adaptive Robot--STH500 .............................................................................................29
2.3.4 Adaptive Robot--TRB050 ............................................................................................ 30
2.3.5 Adaptive Robot--TKB060 .............................................................................................31
2.3.6 Adaptive Robot--TKB070 .............................................................................................32
2.3.7 Adaptive Robot--TKB1210 ...........................................................................................33
2.3.8 Adaptive Robot--TKB800 .............................................................................................34
2.4 TRC 5-B06 control cabinet ..................................................................................................... 35
2.4.1 Appearance of the control cabinet ............................................................................. 35
2.4.2 Adaptive Robot--TKB1400 ...........................................................................................39
2.4.3 Adaptive Robot--TKB1440 ...........................................................................................40
2.4.4 Adaptive Robot--TKB1900 ...........................................................................................41
2.4.5 Adaptive Robot--TKB2030 ...........................................................................................42
2.4.6 Adaptive Robot--TKB1600 ...........................................................................................43
2.4.7 Adaptive Robot--TKB2670 ...........................................................................................44
2.4.8 Adaptive Robot--TKB2690 ...........................................................................................45
2.4.9 Adaptive Robot--TKB6300 ...........................................................................................46
2.4.10 Adaptive Robot--TKB460 ...........................................................................................47
2.4.11 Adaptive Robot--TKB4600 ........................................................................................ 48
2.5 TRC 3-C06 control cabinet ......................................................................................................50
2.5.1 Appearance of the control cabinet ............................................................................. 50
2.5.2 Adaptive Robot--TKB5600 ...........................................................................................52
2.5.3 Adaptive Robot--TKB5700 ...........................................................................................53
2.5.4 Adaptive Robot--TKB6700 ...........................................................................................54
2.5.5 Adaptive Robot--TKB3670 ...........................................................................................55
2.5.6 Adaptive Robot--TKB5800 ...........................................................................................56
3. Basic knowledge of robotics ............................................................................................................ 57
3.1 Coordinate system of the robot .............................................................................................57
3.1.1 Right-hand coordinate system .................................................................................... 57
3.1.2 Euler angle definition ..................................................................................................57
3.1.3 Robotic reference frame ............................................................................................. 57
3.1.3.1 Base base frame ...............................................................................................57
3.1.3.2 User coordinate system ................................................................................... 58
3.1.4 Robot tool coordinates ............................................................................................... 59
3.1.5 Left and right hands of the Scara robot ...................................................................... 59
3.2 Zero point position of the robot ............................................................................................ 59
3.3 Singular point and working range space ................................................................................60
3.3.1 Singular point ..............................................................................................................60
3.3.2 Inaccessible zone of the robot ....................................................................................61
4. Robot debugging tools .....................................................................................................................62
4.1 Teach Pendant ........................................................................................................................62
4.1.1 Introduction of key function ....................................................................................... 62
4.2 Remote debugging tool ......................................................................................................... 63
4.2.1 Introduction of the TeachTool software ..................................................................... 63
4.2.1.1 Overview .......................................................................................................... 63
4.2.1.2 Function ........................................................................................................... 63
4.2.2 Download address and installation steps ................................................................... 63
5 Controller parameters .......................................................................................................................67
5.1 Basic setting ........................................................................................................................... 67
5.1.1 Cart param .................................................................................................................. 67
5.1.2 Joint param ................................................................................................................. 68
5.2 Introduction to the SW maintenance .................................................................................... 68
5.2.1 SW backup of the SW maintenance ........................................................................... 69
5.3 System setting ........................................................................................................................70
5.3.1 EtherCat ...................................................................................................................... 70
5.3.2 Kernel mode configuration ......................................................................................... 70
6 Software instructions ....................................................................................................................... 72
6.1 Variable operation ................................................................................................................. 72
6.1.1 Common variable type definition ............................................................................... 72
6.1.1.1 DIGITAL .............................................................................................................72
6.1.1.2 STRING ............................................................................................................. 72
6.1.1.3 POINT ............................................................................................................... 73
6.1.2 Implicitly declared variables. ...................................................................................... 73
6.1.3 Input / Output .............................................................................................................74
6.1.3.1 I/O control ........................................................................................................74
6.1.3.2 DA control ........................................................................................................ 75
6.1.4 Format description ......................................................................................................76
6.2 Movement instruction ........................................................................................................... 77
6.2.1 Common motor commands ........................................................................................78
6.2.1.1 Type of joint movement ...................................................................................78
6.2.1.2 Linear movement .............................................................................................79
6.2.1.3 Arc motion ....................................................................................................... 80
6.2.1.4 Full Circle Motion .............................................................................................81
6.2.1.5 Type of cooperative movement .......................................................................81
6.2.2 Logic instructions ........................................................................................................ 82
6.2.2.1 if...else(&&||) .................................................................................................. 83
6.2.2.2 While ................................................................................................................83
6.2.2.3 For .................................................................................................................... 83
6.2.2.4 Swtich ...............................................................................................................83
6.2.3 Coordinate instructions .............................................................................................. 84
6.2.3.1 Coordinate system instruction .........................................................................84
6.2.3.2 Point instruction .............................................................................................. 85
6.2.4 Procedure Control Instruction .................................................................................... 86
6.2.4.1 Trigger during motion ...................................................................................... 86
6.2.4.2 Movement pause and program stop ............................................................... 86
6.2.4.3 subsystem ........................................................................................................ 87
6.3 Common keywords and special functions ............................................................................. 88
6.3.1 DEFINE .........................................................................................................................88
6.3.2 PrintMsg ......................................................................................................................88
7. Basic operation function ..................................................................................................................89
7.1 Base point .............................................................................................................................. 89
7.2 Interference ........................................................................................................................... 90
7.3 Safe Area Setting ....................................................................................................................91
7.4 Safety door .............................................................................................................................92
7.5 Prog Start ............................................................................................................................... 92
7.6 Alarm ......................................................................................................................................94
7.7 IO group ................................................................................................................................. 95
8 Background program ........................................................................................................................ 98
8.1 Background functions of the robot ........................................................................................98
8.1.1 Background program .................................................................................................. 98
8.1.2 Commonly Used Background Function ...................................................................... 99
8.1.3 Background common program cases ....................................................................... 100
8.1.3.1 Catch the edge trigger of IO signal trigger .....................................................100
8.1.3.2 Background script to switch foreground programs ....................................... 100
8.1.3.3 Movement judgement of the robot .............................................................. 102
8.1.3.4 Reservation function in the background ....................................................... 103
8.1.4 The Background TCP communication ....................................................................... 105
8.1.4.1 Robot Ethernet setup .....................................................................................105
8.1.4.2 Server /Client ................................................................................................. 110
8.1.4.3 Case:Send and receive unknown coordinate points ..................................... 110
8.1.4.4 Send and receive int data .............................................................................. 114
8.1.4.5 Send and receive hex data .............................................................................115
9 Industrial fieldbus communication ................................................................................................. 117
9.1 Remote operation of the robot ........................................................................................... 117
9.1.1VNC Mapping the presentation device interface ...................................................... 117
9.2 ModbusTCP .......................................................................................................................... 117
9.3 MC protocol 3E frame format ..............................................................................................125
9.3 The FINS protocol .................................................................................................................135
9.4 EtherNetIP ............................................................................................................................143
9.4.1, the internal setting of the robot .............................................................................. 143
9.4.2 Hardware architecture ..............................................................................................144
9.4.3 Internal PLC settings ................................................................................................. 144
9.4.4 Communication examples ........................................................................................ 144
9.5 network instructions in Xml format .....................................................................................146
9.5.1 TCP / IP communication configuration ..................................................................... 146
9.5.2 IP address configuration and communication .......................................................... 146
9.5.3 Command package format ........................................................................................146
9.5.4 Command introduction .............................................................................................148
9.6 Class EtherCat communication ............................................................................................ 170
9.6.1 External Shaft ............................................................................................................170
9.6.1.1 Hardware configuration .................................................................................170
9.6.1.2 System configuration ..................................................................................... 171
9.6.1.3 External axis collaborative calibration ........................................................... 172
9.6.1.4 Cooperative calibration verification of external axes .................................... 174
10 Universal industry process package ..............................................................................................175
10.1 Pallet .................................................................................................................................. 175
10.1.1 typical palletizing application ................................................................................. 175
10.1.2 Pallet setting ........................................................................................................... 175
10.1.3 Program preparation .............................................................................................. 176
10.2 Visual ..................................................................................................................................180
10.2.1 visual basic setting .................................................................................................. 180
10.2.2 Parameter resolution .............................................................................................. 180
10.2.3. Explanation of process instruction ........................................................................ 181
10.2.4 Program instance .................................................................................................... 182
10.2.5 using the background prog ..................................................................................... 183
10.2.7 foreground program ............................................................................................... 186
10.3 tracking method ..............................................................................................................186
10.3.1 tracking the hardware settings ............................................................................... 186
10.3.2 Suggestions for installation .....................................................................................188
10.3.3 Description of the algorithm ...................................................................................189
10.3.4 Process Settings ...................................................................................................... 190
10.3.4.1Process settings ............................................................................................ 190
10.3.4.2 Tracking ........................................................................................................ 191
10.3.4.3 Disk track calibration ................................................................................... 192
10.3.5 Instructions resolution ............................................................................................193
10.3.6 Procedure cases ...................................................................................................... 198
10.4 Punch ................................................................................................................................. 200
10.4.1 General ....................................................................................................................200
10.4.1.1 Ctrl options .................................................................................................. 200
10.4.1.2 Display options .............................................................................................200
10.4.2 Online Settings ........................................................................................................202
10.4.2.1 Robot online setting .....................................................................................202
10.4.2.2 Punch online settings ...................................................................................203
10.4.2.3 Feeding mach online settings ...................................................................... 203
10.4.3 Operation ................................................................................................................ 204
10.4.3.1 Variable cylinder settings .............................................................................204
10.4.3.2 Fixture settings ............................................................................................ 204
10.4.3.3 Loadina pt cyclic shift ...................................................................................205
10.4.3.4 Unloading pt cyclic shift ...............................................................................206
10.4.4 Teach template ....................................................................................................... 208
10.4.4.1 Polints .......................................................................................................... 208
10.4.4.2 Path .............................................................................................................. 208
10.4.4.3 Template ...................................................................................................... 209
10.4.5 Reset ....................................................................................................................... 210
10.4.6 Other Settings ......................................................................................................... 210
10.4.6.1 Interference ................................................................................................. 210
11 Turin robot welding industry basic configuration .........................................................................213
11.1 Supported types of welding machine and communication ...............................................213
11.2 The Turin robot expands the external axis mode .............................................................. 216
11.3 welding overview ...............................................................................................................217
11.3.1 Setting of the welding process parameters ............................................................ 217
11.3.1.1 General .........................................................................................................217
11.3.1.2 Arc start ........................................................................................................219
11.3.1.3 Restart ..........................................................................................................221
11.3.1.4 Arc end .........................................................................................................223
11.3.1.5 Re-arcstart ....................................................................................................224
11.3.1.6 Scratch start ................................................................................................. 225
11.3.1.7 Wire stick ..................................................................................................... 226
11.3.1.8 V mapping ....................................................................................................227
11.3.1.9 A mapping ....................................................................................................229
11.3.1.10 Weaving ..................................................................................................... 230
11.3.1.11 Spot welding .............................................................................................. 231
11.3.1.12 Touching search ......................................................................................... 232
11.3.1.13 Arc track .....................................................................................................233
11.3.1.14 Laser search ............................................................................................... 236
11.3.1.15 Welding l0 def ............................................................................................238
11.4 Welding trajectory planning and programming ................................................................ 239
11.4.1 Robot motion mode ................................................................................................239
11.4.2 simple workpiece welding ...................................................................................... 239
11.4.3 Welding track of duplex stations or more stations .................................................240
11.4.4 welding instruction editing ..................................................................................... 241
11.4.4.1 Linear-line welding instruction .................................................................... 244
11.4.4.2 Arc welding instruction ................................................................................245
11.4.4.3 Vertical arc welding instructions ..................................................................247
11.4.4.4 Continuous-point welding command .......................................................... 248
11.4.4.5 Return welding instruction .......................................................................... 248
11.5 Laser tracking .....................................................................................................................249
11.5.1 The Turing robot teaching device page operation ..................................................249
11.5.1.1 The Turing robot system upgrade ................................................................249
11.5.1.2 Show ator key introduction ......................................................................... 252
11.5.2 Preparation before installation of the laser weld tracker .......................................254
11.5.2.1 Item preparation ..........................................................................................254
11.5.2.2 Software preparation ...................................................................................254
11.5.3Installation and wiring of the weld tracker ..............................................................254
11.5.3.1 The sensor is connected to the control cabinet .......................................... 254
11.5.3.2 Sensor installation ....................................................................................... 255
11.5.4 Laser weld tracker setup .........................................................................................255
11.5.4.1Laser Weld Tracker firmware version ........................................................... 255
11.5.4.2 Laser weld tracker firmware update ............................................................255
11.5.5 Configuration of communication parameters ........................................................ 256
11.5.5.1 Sensor communication settings ...................................................................256
11.5.5.2 Robotic communication settings ................................................................. 256
11.5.6 Calibrate ..................................................................................................................258
11.5.6.1Tool calibration ............................................................................................. 258
11.5.6.2 Monitoring of the laser tracking ..................................................................259
11.5.6.3 Laser calibration ...........................................................................................261
11.5.6.4 Laser verification ..........................................................................................263
11.5.7 Laser tracking instructions ......................................................................................264
11.5.7.1Laser tracking begins .................................................................................... 264
11.5.7.2 Laser tracker parameter settings ................................................................. 265
11.5.7.3 Real-time tracking program ......................................................................... 267
11.5.7.4 Single point search bit change posture ....................................................... 268
11.5.7.5 Two points to change posture ..................................................................... 269
11.5.7.6 Four points to find a position to change posture ........................................ 270
11.5.7.7 Commonly used instructions ....................................................................... 271
11.5.7.8 Common operation of laser location finding ...............................................272
1 Safety
1.1 About Safety
This chapter describes the safety principles and procedures for operating a robot or a robot
system.
This manual gives a comprehensive description of the composition and operation of Turin
industrial robots. Please be sure to read and fully understand the basis of the operation of the
robot.
The illustration in the maintenance manual removes the cover or safety cover for drawing for
details. When operating such parts, be sure to restore the cover or safety cover as specified, and
then run according to the instructions.
The drawings and photos in the manual are representative examples and may be different from
the purchased products.
The manual is sometimes modified due to product improvement, specification change, the fact
that the manual itself is easier to use and other appropriate reasons.
The company is not responsible for the customer's unauthorized modification of the product,
which is not within the scope of warranty.
1
1.2 Applicable Safety Standards
The manipulator system is designed to meet the following requirements:
Standard
Standard Explain
EN ISO 12100-1 Safety of machinery - Basic concepts,general principles for design - Part
1:Basic terminology,methodology
EN ISO 12100-2 Safety of machinery - Basic concepts,general principles for design - Part
2:Technical principles
EN ISO 13849-1 Safety of machinery,safety related parts of control systems - Part
1:General principles for design
EN ISO 13850 Safety of machinery - Emergency stop - Principles for design
EN ISO 10218-1 Robots for industrial environments - Part 1
EN ISO 9787 Manipulating industrial robots, coordinate systems, and action naming
EN ISO 9283 Manipulating industrial robots, performance standards, and associated
test methods
EN ISO 14644-1 Ergonomics of the thermal environment - Part 1
EN ISO 13732-1 EMC,Generic emission
(Optional 129-1)
EN 61000-6-2 EMC,Generic immunity
EN IEC 60974-1 Welding arc part-Part 1: Welding power supply
EN IEC 60204-10 Arc welding equipment - Part 10:EMC requirements
EN 60204-1 Safety of machinery - Electrical equipment of machines - Part 1 General
requirements
IEC 60529 Degrees of protection provided by enclosures(IP code)
European Standard
Standard Explain
EN 614-1 Safety of machinery - Ergonomic design principles - Part 1:Terminology
and general principles
EN 574 Safety of machinery - Two - hand control devices - Functional aspects -
Principles for design
EN 953 Safety of machinery - General requirements for the design and
construction of fixed and movable guards
Other Standards
Standard Explain
ANSI/RIA R15.06 Safety Requirements for Industrial Robots and Robot Systems
ANSI/UL 1740 Safety Standard for Robots and Robotic Equipment
(Optional 429-1)
2
1.3 Safety Terminology
1.3.1 Safety Signals In the Manual
3
that contain important information about the product.
Sign on the Safety Label
Sign Explain
Warn!
If you do not follow the instructions, an accident may occur, which can
cause serious injury or significant damage to the product.
Take Care!
Without following the instructions, accidents that cause injury and
product damage may occur.
Prohibit!
Product Manuals
Do Not Disassemble
Extended Rotation
Sign Explain
Squeeze
Risk of crush injury
4
Brake Release
Ring
Stoppage of Machine
5
Sign Explain
Oil
If oil is not allowed, it can be used in combination with the prohibition
sign
Storage of Energy
Warning, this part contains energy.
Used in conjunction with the "Do Not Disassemble" sign.
Pressure
Warning, this part is compressed, usually contains additional text with
pressure level.
1.3.3 Danger
1.3.3.1 Danger - Make sure the main power is off!
High-pressure operations can have fatal consequences. To avoid these consequences, be sure to do
the following before you work:
Close the master switch on the control cabinet:
6
Moreover, all movements produce large forces that endanger people or damage any equipment
within the operating range of the manipulator.
To avoid the above consequences, be sure to perform the following operations before the
Operation:
Be sure to install and connect the emergency stop device correctly before running.
Ensure that there is no personnel activity in the robot working range before pressing the start
button.
1.3.3.3 Danger- -A robot without a shaft brake may be dangerous!
The robot arm system is very heavy and can be dangerous if the brake is not connected, if it is
connected incorrectly, if it is damaged, or if any malfunction renders it inoperable.
To avoid the above consequences, be sure to perform the following operations before the
Operation:
If it is suspected that the brake can not be used properly, other methods should be used to ensure
the safety of the robot arm system before operation;
If you plan to disable the brake from the external power supply, please pay attention to the
following matters:
When the brake is disabled, never stand within the operating limits of the robot (unless
another method is used to support the arm system)!
It can only be used for its specific purposes and established conditions.
Should not be used for normal program stop as this may cause additional unnecessary wear
on the manipulator.
7
1.3.6 What is a safe stop?
Definition
Also called a protective stop, only disconnect the power supply of the manipulator motor. Just
reconnect the motor power supply to return to normal operation.
It can only be used for its specific purposes and under set conditions;
Should not be used for normal program stop and may cause additional unnecessary wear of the
manipulator.
Security stop type
safety stop description
Automatic mode Disconnect the automatic mode drive power supply
stop (AS) In manual mode, this input is inactive
Routine Stop (GS) Disconnect drive power in all operating modes
Higher-level stop Disconnect drive power in all operating modes
(SS) Dedicated to external devices
It can only be used for its specific purposes and under set conditions;
Should not be used for normal program stop and may cause additional unnecessary wear of the
manipulator.
Security protection space
Protection range of the protection device.
Security protection mechanism
Contains many protective devices in series. When a protective device is started, the protective chain
is disconnected and the machine stops running.
1.3.8 How to use the Teach Pendant device safely?
The Dead Man Switch is located on the right side of the demonstrator and is only useful in the
teaching mode, and is divided into three positions: disconnect, press and repress. The servo motor
is not powered when disconnected or pressed (in case of no operation or emergency), and powered
when pressed.
To ensure safe use of the Teach Pendant, be sure to follow the following rules:
At any time, we must ensure that the actuating device can work normally;
In the process of programming and testing, the manipulator must be released as soon as possible
when it does not need to move;
When entering the robot workspace, the operator must carry the Teach Pendant with him to
prevent others from touching the Teach Pendant.
1.4 How to handle an emergency?
1.4.1 Stop the system
Press the emergency stop button immediately in the following situations:
When the robot is running, there are staff in the working area;
When endangering people and damaging equipment.
8
Emergency stop button
9
Pic 1-4 Emergency stop button on control cabinet
Other emergency stop equipment
User and designer can place other emergency stop equipment in the appropriate position according
to the actual situation.
1.4.2 Release the robot brake
The robot brake shall be released manually when charged. When the controller power switch is
"on", the power supplies power even if the system is in emergency.
Battery powered
Use batteries to power the brake system.
Brake brake release button
Robots have different models and different button positions. Please refer to the details of the
different robots and remember the button position.
Pay Attention
Before releasing the brake brake, always consider:
How will the robotic arm move?
What is the impact on the winding piece?
Danger
Release of the brake may cause personnel injury or property damage. Do this only with caution if
necessary.
If necessary, use an overhead crane, forklift or other equipment to protect the robot arm;
Make sure that the robot is powered on;
Ensure that when the brake release, will not increase the damage of the wound workpiece;
Press the appropriate brake release button to release the brake brake.
1.4.3 Fire fighting
Pay Attention
In case of fire, please ensure that all personnel are evacuated safely before extinguishing the fire.
Priority should be given to the injured personnel.
The choice of fire extinguisher
Use a carbon dioxide fire extinguisher when the electrical equipment catches fire.
1.4.4 Recovery from the emergency stop state
This step is a simple but very important step. Ensure that the control system resumes operation only
10
after the danger is completely removed.
Reset the emergency stop button
Emergency stop can be released by turning or pulling the emergency stop button.
Recovery from the emergency stop state
Ensure that all hazards are eliminated;
Locate and reset the equipment causing an emergency stop state;
Rotate or remove the emergency stop button.
1.4.5 Return to the programming path
Cutting off the power supply of the robot motor easily leads to the loss of the robot programming
path. Emergency stop or safety stop may also cause path loss.
Allowed slip distance is configured by the system parameters. Differs by the mode of operation.
If the robot is not within the allowable distance set, the robot can be returned to the programming
path, or located to the next programming point in the path, and then the program automatically
continues to execute at the speed of editing in the program.
11
1.5 Safety matters at work
1.5.1 Overview
About the robot
The robot is of high quality and powerful. A pause or stop in motion can be dangerous. Even if the
movement trajectory can be predicted, the external signal has the potential to change the
operation, producing unexpected movements without any warning.
Be sure to follow all safety regulations when entering the protected spaces.
About this section
This section describes some of the most basic regulations that users need to follow. In practice,
should be specific problem specific analysis.
1.5.2 Self-safety
General Principles
If there are staff in the protection space, please operate the robot system manually.
When entering the protective space, please bring the Teach Pendant with you to control the robot
at any time.
Pay attention to the rotating or moving tools, and ensure that these tools have stopped moving
before approaching the robot.
Note the high-temperature surface of the workpiece and the robotic system. The motor
temperature is very high after running for a long time.
Pay attention to the fixture and make sure the workpiece is clamped properly. If the fixture is open,
the workpiece can fall off and endanger personal safety or cause damage to the equipment. If the
clamps are strong and not operated in the correct way, personal safety is also at risk.
Pay attention to the hydraulic and pneumatic systems and live components. Even if the power is cut
off, the residual power supply is also very dangerous.
Disconnect the Teach Pendant
Store the Teach Pendant safely after being disconnected from the robot unit or controller. In case of
danger, use the Teach Pendant to stop the robot.
Note: The Teach Pendant shall be stored in an appropriate manner to avoid being mistaken as
still connected to the controller.
Custom Teach Pendant connection
After the display is connected (except the supply cable and standard connector), the emergency
stop button must work properly.
If you use a custom connection, test the emergency stop button regularly.
1.5.3 Disposal of Teach Pendant
Disposal of Teach Pendant
The Teach Pendant is a high quality handheld terminal. To avoid the failure or damage caused by the
improper operation, please follow this instructions during the operation. The Teach Pendant is only
for the purposes specified in this manual.
Handling and cleaning
Handle with care. Do not break or malfunction by dropping, throwing or pounding on the
demonstrator;
When there is no need to use the teaching device, please place it in the corresponding position to
avoid falling;
Do not press the display cable;
Use the touch screen with a finger or touch pen, do not use sharp objects to avoid damage to the
touch screen;
12
Clean the touch screen regularly;
Do not use solvent, detergent or scrub sponge cleaner. Use a soft cloth dipped in a small amount of
water or a neutral detergent.
When there is no need to connect USB equipment, cover the USB port to avoid connection
interruption or failure;
Note: The Teach Pendant shall be stored in an appropriate manner to avoid being mistaken as
still connected to the controller.
Cable and power supply
Turn off the power supply before opening the Teach Pendant cable entry area. Otherwise, the
components may be damaged or have unknown signals;
Ensure that any personnel will not trip over the cable to avoid the equipment falling;
Avoid the extrusion of other objects to avoid damage to the cable;
Do not place the cable on sharp edges to damage the cable skin.
Waste Disposal
Compliance when disposing of electronic components! When replacing the components, please
dispose of the used components correctly.
The foreseeable abuse of the devices
Means prohibiting the enabled device to be stuck in the enabled position. The foreseeable abuse of
the devices must be strictly restricted.
When you release the enabled device and then press it again, make sure that the system is closed
before pressing again, otherwise you will receive an error message prompt.
1.5.4 Safety Tools
Security protection mechanism
The robot systems can be equipped with a wide variety of safety protection devices.
The controller has three independent safety protection mechanisms, respectively:
General Mode Safety Protection Stop (GS): always valid in any operating mode;
Automatic Mode security protection stop (AS): it is only valid when the system is in automatic
mode;
Master Security Stop (SS): always valid in any mode of operation.
Security monitoring
Emergency stop and safety protection mechanisms are monitored to stop the robot when the
controller detects any fault.
Limit the working scope of the robot
Can be restricted by a mechanical stop, a software function, or a combination of both.
1.5.5 Safety in manual mode
Brief Introduction
Teaching mode for programs to create, store, and test robot paths and locations.
Use the key switch to select the manual mode to effectively prevent accidental touch. In manual
mode, the robot is started by the enabling switch on the monitor, which is divided into three stages:
break, press and pressure. The robot motor can be started only when the enabling switch is pressed,
and the machine will not move when disconnected or stressed.
Service Speed
In the manual mode, the movement speed of the manual teaching robot can be set autonomously.
Top speed is 25% of the rated speed.
13
1.5.6 Security in automatic mode
Brief Introduction
The automatic mode is used to run the robotic programs in the production.
Effective safety and protection mechanism
In the automatic mode, the General Mode Safety Protection Stop (GS) mechanism, the Automatic
Mode security protection stop (AS) mechanism, and the Master Security Stop (SS) mechanism are
all active.
Processing process interference
Process interference can affect specific robotic cells and even entire system chains. The chain of
events may result in dangerous operations not being known when operating individual robot cells.
Therefore, the person performing all remedial actions must be familiar with the entire production
line.
14
2 Product composition
2.1 The Teaching Instrument
2.1.1 Appearance of the Device
The appearance of the Teach Pendant is 290 * 240 * 53 (mm), with 12 log keys, 4 program control
keys, 4 custom function keys, emergency stop switch, enabling switch, mode switch, the operating
temperature is-30℃~80℃.
The Teach Pendant is a human-computer interaction device. It can realize the operation robot
movement, complete the teaching programming, realize the system setting, fault diagnosis and
other operations. The front includes an emergency stop switch, a touch display, and touch buttons.
The enabling switch is on the right side of the Teach Pendant for the operator to hold during
operation.
15
program;
Manual (teach) mode starts a single-step run
BK Return to zero button, press and hold the robot joint to zero, release the stop
movement
ST STOP (Stop) button, automatic (reproduce) mode stop program execution
FW Clear the drive alarm push button
16
directly above the control cabinet, and there is an interconnection cable interface on the side of the
control cabinet.
Control cabinet appearance
Note: The IO board does not use internal power supply, but uses external 24V power supply.
17
Pic 2-5 Electric Installation Drawing of Customer Interface
18
Pic 2-6 Electric Installation Drawing of Customer Interface
19
2.2.2 Adaptive Robot--STG030
Robot Ontology
20
2.2.3Adaptive Robot--STG100
Robot ontology
21
Pic 2-11 The appearance of STH100
Parameter diagram
22
2.2.5 Adaptive Robot--STW030
Robot ontology
23
2.2.6 Adaptive Robot--STW060
Robot ontology
24
2.3 TRC 3-A06 control cabinet
2.3.1 Appearance of the control cabinet
Adaptation of the robot model: STH200, STH500, TRB050, YKB060, TKB070, TKB1210,
On the front panel of the control cabinet, there are a power switch, emergency stop switch,
automatic hand switch, door lock and various buttons / indicator lights. The monitor is placed
directly above the control cabinet, and there is an interconnection cable interface on the side of the
control cabinet.
Control cabinet appearance
25
interface.
Customer Interface:
The IO board has DB15, DB25 and DB9:
DB9 internal input is connected to the anti-collision switch signal, hand press signal, program stop
signal, etc. Without external power supply, directly use the fast plug internal power supply. Note:
The IO board does not use internal power supply, but uses external 24V power supply.
26
Pic 2-20 Electric Installation Drawing of Customer Interface
27
2.3.2 Adaptive Robot--STH200
Robot ontology
28
2.3.3 Adaptive Robot--STH500
Robot ontology
29
2.3.4 Adaptive Robot--TRB050
Robot ontology
30
2.3.5 Adaptive Robot--TKB060
Robot ontology
31
2.3.6 Adaptive Robot--TKB070
Robot ontology
32
2.3.7 Adaptive Robot--TKB1210
Robot ontology
33
2.3.8 Adaptive Robot--TKB800
Robot ontology
34
2.4 TRC 5-B06 control cabinet
2.4.1 Appearance of the control cabinet
TRC 5-B06 control cabinet is divided into two kinds: handling and welding, the appearance is not
different, the interior is slightly different.
Adapter for robot model:
Welding: TKB1400, TKB1440, TKB1900, TKB2030
Handling: TKB1600, TKB2670, TKB2690, TKB6300, TKB460, TKB4600
On the front panel of the control cabinet, there are a power switch, emergency stop switch,
automatic hand switch, door lock and various buttons / indicator lights. The monitor is placed
directly above the control cabinet, and there is an interconnection cable interface on the side of the
control cabinet.
Control cabinet appearance
35
Memory Capacity 4G DDR3
User Storage Space MSATA Solid state drive 60GB
Control Cabinet
Power switch, emergency stop button (optional hand / automatic switch
Switch Push Button switch, start button, stop button)
Control Cabinet
Power supply indicator lamp (optional operation indicator lamp, status
Indicator Light indicator lamp)
Number of Control Single machine 6 axis, another can expand 3 external axes, linkage and
Axes collaborative movement.(Single axis axis, XY rotation axis, walking axis)
IO Quantity Standard DI (digital input): 10 DO (digital output): 14
Optional DI (digital input): 18 DO (digital output): 10
Welding reserved DI (digital input): 8 DO (digital output): 10
AO (analog output): 2
Support for External Ethernet interface RJ 45 (TCP / IP; Modbus TCP); HDMI; USB
Communication and
Interface
Security Module Ensure that the robot stops quickly when the emergency stop is
associated and the robot is abnormal
Operator Schema Teaching, reproduction, remote
Programming Method Teaching reproduction, offline import, process editing
Motor Function Joint, straight line, circular arc, transformer linkage, coordination,
conveyor belt to follow
Code Repertory Motion, logic, craft, operation
Coordinated System Joint coordinates, world coordinates, tool coordinates, and user
coordinates
Abnormal Detection Emergency stop, servo, security maintenance, arc starting, user
Function coordinates, tool coordinates, etc
Levels of Protection IP65
Origin Function Absolute type: battery memory; zero-point calibration function
Cooling Heat exchangers
Source 220V AC
36
Pic 2-38 Electric Installation Drawing of Customer Interface
37
Electrical Drawing (Welding)
Electrical drawings are mainly divided into four parts: power supply, control system, servo and user
interface.
customer interface:
The OJ 1 port, IJ 2 port, and IJ 1 internal input port are available on the IO board:
The internal input is connected to the anti-collision switch signal, hand press signal, program stop
signal, etc., without external power supply, directly use the fast plug internal power supply. Note:
The IO board does not use internal power supply, but uses external 24V power supply.
38
2.4.2 Adaptive Robot--TKB1400
Robot ontology
39
2.4.3 Adaptive Robot--TKB1440
Robot ontology
40
2.4.4 Adaptive Robot--TKB1900
Robot ontology
41
2.4.5 Adaptive Robot--TKB2030
Robot ontology
42
2.4.6 Adaptive Robot--TKB1600
Robot ontology
43
2.4.7 Adaptive Robot--TKB2670
Robot ontology
44
2.4.8 Adaptive Robot--TKB2690
Robot ontology
45
2.4.9 Adaptive Robot--TKB6300
Robot ontology
46
2.4.10 Adaptive Robot--TKB460
Robot ontology
47
2.4.11 Adaptive Robot--TKB4600
Robot ontology
48
Pic 2-61 Parameter diagram of TKB4600
49
2.5 TRC 3-C06 control cabinet
2.5.1 Appearance of the control cabinet
Adapter for robot model:
TKB5600、TKB5700、TKB6700、TKB3670、TKB5800
On the front panel of the control cabinet, there are a power switch, emergency stop switch,
automatic hand switch, door lock and various buttons / indicator lights. The monitor is placed
directly above the control cabinet, and there is an interconnection cable interface on the side of the
control cabinet.
Control cabinet appearance
50
customer interface:
The OJ 1 port, IJ 2 port, and IJ 1 internal input port are available on the IO board:
The internal input is connected to the anti-collision switch signal, hand press signal, program stop
signal, etc., without external power supply, directly use the fast plug internal power supply. Note:
The IO board does not use internal power supply, but uses external 24V power supply.
51
2.5.2 Adaptive Robot--TKB5600
Robot ontology
52
2.5.3 Adaptive Robot--TKB5700
Robot ontology
53
2.5.4 Adaptive Robot--TKB6700
Robot ontology
54
2.5.5 Adaptive Robot--TKB3670
Robot ontology
55
2.5.6 Adaptive Robot--TKB5800
Robot ontology
56
3. Basic knowledge of robotics
3.1 Coordinate system of the robot
3.1.1 Right-hand coordinate system
The right hand coordinate system is one of the ways to specify a rectangular coordinate system in
space.In this coordinate system, the positive direction of the x-axis, y-axis and z-axis is specified as
follows: put the right hand in the position of the origin, so that the thumb, index finger and middle
finger form right angles to each other, point the thumb to the positive direction of the x-axis, and
point the index finger to the positive direction of the y-axis, the direction of the middle finger is the
positive direction of the z-axis.
57
Pic 3-3 Base coordinate system of reference
The terminal flange position of the manipulator is the mechanical interface coordinate system. The
rectangular coordinates in the teaching interface describe the translation and rotation between the
mechanical interface coordinate system and the seat coordinate system. The X-axis direction of the
seat coordinate system is set from the origin to the center of the working area of the manipulator,
the Z-axis is vertical seat, and the Y direction of the robot body follows the right hand coordinate
system.
3.1.3.2 User coordinate system
58
3.1.4 Robot tool coordinates
59
Pic 3-7 Zero Point
3.3 Singular point and working range space
3.3.1 Singular point
1. Wrist joint singularity
When the 4 axis and the 6 axis of the robot are in the same straight line (that is, the 5 axis is close to
0 degrees), the wrist singularity appears. When this happens, the rotation of the 4 axis cancels the 6
axis. May cause a rapid rotation of the axis.
60
Pic 3-10 The top is singular
61
4. Robot debugging tools
4.1 Teach Pendant
Teach Pendant is a human-computer interaction device. Through it, users can operate the robot to
make a movement and complete the teaching process programming, implementing the system
setting, fault diagnosis, etc. The front includes an emergency stop switch, a touch display, and touch
buttons. Dead man switch is on the right side of the display device for the operator to hold during
operation.
4.1.1 Introduction of key function
62
J3-,J3+ Three-axis forward and reversal
63
Pic 4-3 Step 2
Step 3, open the installation package, and run, save to the target path, click [Next].
Step 4: After selecting the Start menu folder, click [Next] to continue and click [Install] to complete
the installation.
64
Pic 4-5 Step 4-1
65
Pic 4-7 Step 4-3
66
5 Controller parameters
5.1 Basic setting
5.1.1 Cart param
The spatial parameter is the limit on the end speed of the robot when the robot is running in the
Cartesian coordinate system.
When the Cartesian coordinate system runs, there is not only the translation, but also the
transformation of the posture, namely the RX / RY / RZ direction rotation. The trajectory is different
during the movement, and the participation degree of each joint is different, so the factory setting
value of the spatial parameter is relatively conservative to meet the safe operation under each
working condition. It can be adjusted as necessary in the actual operation. In linear motion planning,
the maximum speed of each joint is still constrained according to the maximum speed of the joint in
the joint parameters. For example, under a trajectory, an axis needs more than 3000rpm speed to
meet, and the controller will generate an alarm.
67
5.1.2 Joint param
68
Pic 5-3 File copy interface
5.2.1 SW backup of the SW maintenance
If you need to back up the software system, or there are operational problems need to be solved by
the manufacturer, generally need customers to provide some operation related parameters, the
following are some commonly used parameters backup.
Select the U disk and click what you to Backup, and start the backup. Backup will only pack the files
and will not delete the original system files.
69
5.3 System setting
EtherCat The ENI file used in the interface shall correspond to the actual corresponding slave
network mode.
5.3.1 EtherCat
70
1. When running in non-kernel mode, the bus cannot communicate.
2. The ENI generated in the kernel mode cannot be used for the non-kernel mode master station,
and the ENI generated by EC-engineer is universal in both modes.
pour:
In kernel mode, no longer need to modify the card address.
71
6 Software instructions
6.1 Variable operation
6.1.1 Common variable type definition
6.1.1.1 DIGITAL
Digital is a float type variable, store 4 bytes.
72
6.1.1.3 POINT
Point is a coordinate point variable that is used to store the robot points.
6.1.2 Implicitly declared variables.
1. V variables
The V variable stores the float data. Through the variable operation, addition, subtraction,
multiplication, division and other operations. In practice, the V variable is often used to count and
store the coordinates.
73
The P variable stores the coordinate point information in the column coordinate system and the
Cartesian coordinate system (joint coordinate system, Cartesian coordinate system). There are
generally two ways to use the program. The first directly calls the stored P point to perform the
movement, so that the program runs the same position many times. The second one stores the
current position at point P, then changes the coordinates of the P variable, and then calls it. In
practical use, it can be used to perform a relative offset or to obtain the absolute coordinates
through communication.
Case refer to the figure below.
explanatory note:
1. The variable names should be consistent between the modified P variable, stored P variable and
the P variable performing motion.
2, modify the Cartesian coordinate to use the straight line instruction to execute the movement,
and vice versa.
6.1.3 Input / Output
6.1.3.1 I/O control
During the use of a robot, communication with external devices is done through IO signals. After
connecting the hardwired cables, users may need to check the current status of the IO. This can be
done by navigating to【Monitoring/Control】-【Input/Output】-【I/O Control】to view the current
IO status.
DI signals: DI signals are input signals, also known as digital input signals. They are used for the
controller to read the status of digital signals from external devices. Signals 00-05 are reserved for
system internal use, where 00 represents emergency stop state signal, 01 represents anti-collision
switch signal, 02 represents reproduce/autosignal, 03 represents hand-pressure activation signal, 04
represents program start signal, and 05 represents program stop signal.
DO signals: DO signals are output signals, also known as digital output signals. They are used for the
controller to output the control status of digital signals to external devices. Signals 00-01 are
reserved for system internal use, where 00 represents program run prompt, and 01 represents
program stop prompt.
74
Pic 6-1-3-1 IO control
6.1.3.2 DA control
In welding technology, analog communication is usually used with the welding machine, and DA
control is used. This is a voltage range from 0-10V, which is combined into a linear function using
the analog value given by the robot and the numerical value given by the welding machine.
75
6.1.4 Format description
Variable Types:
There are three variable types available in the control system: numerical variables (float type),
character variables (1024 bytes), and coordinate point variables (which can be used to store point in
space or joints without kinematic relation).
Variable Scope:
There are three types of variable scopes in the control system: system variables, global variables,
and file variables.
System variables: System variables are created and destroyed with the system start/stop. System
variables are usable across the whole system, which means they can be shared by motion scripts
and background programs. System variables are not affected when any program starts or stops, and
can only be changed by scripts or the network, like TCP server.
Global variables: Global variables are created and destroyed when the current script starts and
stops. Global variables can be shared in the current script, including sub-files. However, other places
like front-end and back-end, and network cannot access these variables.
File variables: Also called local variables, the life cycle of the file variables is consistent with that of
the global variables. However, file variables are not shared between the main file and sub-files.
Variable Definition:
Predefined system variables:
V0~V999: 1000 system numerical variables. Note that for convenience, V0, V00, V000 represent the
same variable, and so on. All system preset variables work like this. However, it is recommended to
use the V000 format for hand-coding to look neat.
S0~S999: 1000 system character variables.
P0~P999: 1000 system coordinate point variables.
Predefined file variables:
FV0~FV999: 1000 file numerical variables.
FS0~FS999: 1000 file character variables.
FP0~FP999: 1000 file coordinate point variables
Note: As it was said before, the scope of a file variable is a single file, even if the name is the
same, that is, each main file and each subfile have FV, FS, FP, etc. (3,000 variables), but it cannot be
shared between them. The same variables use the respective memory.
Variable monitoring
It can monitor the content of variables in the system in real time
76
Pic 6-1-1-4 Variable record interface
When the variable is set to automatically store on, the system continuously monitors the variables
used in the script. When the value of the variable changes, it will immediately be stored into the file,
so that the next time the script is launched, it will have access to the updated values..
77
6.2.1 Common motor commands
6.2.1.1 Type of joint movement
Joint motion can also be understood as free motion, where only the endpoint is provided by the
user and the trajectory planner plans the way to reach it. Its characteristics are that it has the
fastest speed and the path is unknown. Therefore, this type of motion is generally used for spatial
points, and before running automatic programs, it must be checked at a low speed to observe
whether there is any interference with surrounding equipment based on the actual motion
trajectory of the robot.
Joint motion type is used when the robot does not need to move to the current teach point along a
specified path. The corresponding motion command for joint motion type is [Joint Motion] (English
instruction: MoveJ). Generally, for safety reasons, the joint motion type is used for the starting point
of a program.
The steps to add a [Joint Motion] command are as follows:
Click [Add Ins] -> [Motion Instruction] -> [Joint Motion], enter the related parameters such as speed,
acceleration, smoothness, tool, and user coordinate system, then click the [Create] button.
78
6.2.1.2 Linear movement
When the robot needs to move through the straight line path to the current teaching point, the
linear motion type is adopted.
The corresponding motion command for linear motion type is [Linear Motion] (English instruction:
MoveL). The starting point of linear motion is the teach point of the previous motion command, and
the end point is the teach point of the current instruction. During the linear motion, the robot’s
motion control point moves in a straight line, and the fixture posture changes automatically.
The steps to add a [Linear Motion] command are as follows. Use the endpoint of the previous
motion command as the starting point of the linear motion. Manually move the robot to the
endpoint of the linear motion. Click [Add Instruction] -> [Motion Instruction] -> [Linear Motion],
enter the relevant parameters such as speed, acceleration, smoothness, tool, and user coordinate
system, then click the [Create] button.
79
6.2.1.3 Arc motion
Arc motion type is used when the robot needs to move to the current teach point along an arc path.
The corresponding motion command for arc motion type is [Arc Motion] (English instruction:
MoveC).
Three motion points are needed for arc motion. The first arc motion starting point is a non-arc
instruction, passing through the first point (auxiliary point) and reaching the second point
(endpoint). If multiple arc motions are connected, the endpoint of the previous arc motion is the
starting point of the next arc motion, and the second arc starting point is an arc instruction.
80
6.2.1.4 Full Circle Motion
When the robot needs to perform a full circle motion, the whole circle motion type is used. The
corresponding motion command for whole circle motion type is [Full Circle Motion] (English
instruction: MoveFC).
Three motion points are required for the whole circle motion. The first whole circle motion starting
point is an auxiliary point, which is not a whole circle instruction. It passes through the first point (a
point on the whole circle), and then passes through the second point (another point on the whole
circle).
81
6.2.2 Logic instructions
Logic instructions can perform logical operations and are essential to perform complex functions.
82
6.2.2.1 if...else(&&||)
6.2.2.2 While
83
Pic 6-2-2-4 Switch ins
Similarly, the S variable can also be used in SWITCH. In this example, when S1 is the corresponding
instruction is not satisfied, then the instruction in default is executed.
6.2.3 Coordinate instructions
6.2.3.1 Coordinate system instruction
The coordinate system instruction can automatically modify the coordinate system information in
the program. By offsetting the coordinate system as a whole, the motion instructions based on that
coordinate system in the program can be offset. The amount of offset can be a constant or a
variable.
84
Pic 6-2-3-1-3 UCS
6.2.3.2 Point instruction
The coordinate point instruction reads and modifies the registers of the coordinate point variable. It
is often used when using machine vision to guide the robot hand. By using a communication-based
method, the coordinate information of the target point can be changed. Coordinate points are
stored in both the joint and rectangular coordinate systems. When modifying and calling them, it is
important to pay attention to the consistency of the coordinate system.
85
6.2.4 Procedure Control Instruction
6.2.4.1 Trigger during motion
These instructions are added before the motion instructions. They can perform corresponding
actions during the execution of motion instructions, such as outputting IO signals and modifying
variables.
86
6.2.4.3 subsystem
File interface
After running, add the return instruction and return to the main program.
87
6.3 Common keywords and special functions
6.3.1 DEFINE
DEFINE Define an identifier to represent a constant. Use for example:
88
7. Basic operation function
7.1 Base point
explain:
1. On this page, you can use the SA key joint to run to the reference point, only if the reference
point must be turned on
2. Reference points can be used in the motion instruction interface. The prerequisite is that the
89
reference point must be turned on. When using a straight motion to the datum point, the user and
the tool must select 0.
7.2 Interference
90
7.3 Safe Area Setting
91
7.4 Safety door
92
program starts from the current line.
When the state is automatic but the program is not running, the controller captures the rising edge
of the DI0 and the cursor jumps to the first line. The cursor is in the first row, and the output state of
the DO0 is low.
Special case: the subprogram triggers the cursor to look back on the line, the normal is to return to
the first line of the main program. If you switch to manual mode, change the content of the
subroutine, and trigger the look back signal, you will return to the first line of the subroutine.
Attached wiring drawings:
93
7.6 Alarm
94
7.7 IO group
95
Pic 7-7-1 IO Control interface
96
Attached wiring drawings as below:
97
8 Background program
8.1 Background functions of the robot
8.1.1 Background program
1. Background program: mon/ctrl-> background prog-> 10 groups of background programs can be
configured under the start-stop configuration.
Motion program: The motion program can control the startup and shutdown status of the
background program. When a background program thread is set in the motion program, the system
starts the background program when the motion program runs, and stops the background program
when the motion program stops. That is, the background program and motion program start and
stop synchronously. When no motion program is set, the background program starts and stops with
the system.
Background program: Specifies the main background program that runs the background program
thread.
There are differences between the execution of the background program and the motion program.
The background program is repeatedly called by the system. For example, if there is a
self-increment instruction “V0 ++”, the instruction will only be incremented once when executed
as a motion program, while it will be constantly called and incremented in the background program.
Therefore, running “ V0 ++ ” in the background program is equivalent to executing
“ WHILE(1):V0++:ENDWHILE ” in the motion program. Of course, executing
“WHILE(1):V0++:ENDWHILE” in the background program is also allowed.
98
8.1.2 Commonly Used Background Function
int SocketServerInit(int)
Function: Initialize the network server,
Parameter 1: Port number.
Return value: successfully returned the server listening socket id.
Failed to return “-1”.
int SocketServerAccept(int)
Function: Listen for client connections
Parameter 1: socket id
Return value: successful execution returned to the client socket id, failed to return-1
int SocketClientInit(string,int)
Function: Connect to the server
Parameter 1: ip address
Parameter 2: Port number
Return value: successfully returned to the client socket id, failed to return to-1
void SocketClose(int)
Function: Turn off the socket
Parameter 1: socket id
Return value: No
int SocketWrite(int,string)
Function: Send the data
Parameter 1: socket id
Parameter 2: string, send length is string length, note no '\ 0'
Return value: successfully return send length, failure returned negative number.
int SocketWrite(int,string,int)
You can specify the length of the send, at the parameter 3
int SocketRead(int,string,int)
Function: Receiving the data
Parameter 1: socket id
Parameter 2: Storage buffer (string variable)
Parameter 3: read length, the current maximum 1024, give greater value does not help
Return value: successfully returned read length, failed to return 0 or negative number.
Note that this is a blocking function that always waits unless something goes wrong.
Suitable for receiving handshake messages.
99
int SocketReadLine(int,string,int)
Function: Read a single line of a string.
Parameter 1: socket id
Parameter 2: Storage buffer (string variable)
Parameter 3: timeout time
Return value: successfully return read length, failed, timeout return 0, network exception return
negative number
8.1.3 Background common program cases
The biggest difference between the foreground program and the background program is that the
foreground program can control the movement of the robot, while the background program cannot
execute the movement instructions. However, the background can be repeatedly called by the
system synchronization, for input and output control, logical judgment, communication program
synchronization control.
The front and rear desks are used together, that is, the program. The processing of complex logic is
essential. The following are several cases to introduce the background function.
8.1.3.1 Catch the edge trigger of IO signal trigger
Sometimes it is necessary to record the changes of an IO state at all times. Waiting in the
foreground program will delay the execution of other actions. So put the edge trigger into the
background for execution.
100
Pic 8-1-3-2 Switch Prog Demo
101
Pic 8-1-3-2-2 S variable monitor
8.1.3.3 Movement judgement of the robot
Normally, DO 0 and DO 1 indicate that the program is stopped and running. However, the program
operation does not mean that the robot body is in the action. Sometimes the workstation needs to
be moved as the standard.
102
8.1.3.4 Reservation function in the background
103
Crafts Reservation
Reservation Functionality: Link programs named 1.txt and 2.txt, switch start and stop functionality
through the two button boxes shown in the figure, and each button box corresponds to the control
of 1.txt and 2.txt respectively. Pressing the start button on the first button box will start 1.txt.
According to the reservation rules, when the start button corresponding to 1.txt is pressed, 2.txt will
enter the reservation waiting state, regardless of when its start button is pressed during the
execution of 1.txt. 2.txt will only begin execution after 1.txt has completed execution.
Once 1.txt starts execution, its start button will no longer be effective and pressing it multiple times
will not interrupt the execution process. The same applies to 2.txt, where its start button cannot
interrupt its execution process. In both cases, only the stop button can interrupt the process.
Otherwise, the process must be allowed to run until completion before continuing with the next
task.
The desired number of workpieces needs to be manually input. Once the desired number of
workpieces is input, the file will execute the specified number of workpieces. Multiple files can be
used in combination, for example, File 1 completes 10 items before launching File 2 to complete 5
items.
104
8.1.4 The Background TCP communication
The following instruction shows how to write the background TCP communication program.
8.1.4.1 Robot Ethernet setup
There are two methods for the IP configuration of the robot:
Robot operation interface configuration:
Select the Settings-> System Settings-> Eth Settings-> Wired, if you do not see the list, select the
following below, eventually a list of connection names appear, select the name of the connection.
The interface is as follows:
105
Select settings-> SW Maintenance-> Quit SW-> Close software, the interface is as follows:
Exit our controller system to the desktop, the upper right network icon of the single interface is as
follows:
106
Select an Edit Connection:
edit IP:
Select the manual method , configure the IP as shown below, save it, and then restart the system.
After setting the IP, you can check the Ethernet status, as shown below:
107
Pic 8-1-4-8 Eth Setting8
108
Finally, IP test can be performed, with parameter setting-> system setting-> Ping
The IP address is set as the address of the destination IP, point start, the following interface appears,
indicating that the two sides are connected.
109
8.1.4.2 Server /Client
Background connection (robot as client)
Note: Since the background program will be repeatedly executed by the system, the
“SocketWrite” function is only allowed to execute when data needs to be sent. Therefore, “V101”
is used as a control condition. Generally, the foreground program sets “V101=1”, and then the
background program sends data..
110
Background script case (received data)
Note: When data resolution, the format of the received content is inconsistent with the format
you want to resolve. Lack of a delimiter or an incorrect delimiter.
111
The foreground program schedules the background script.
112
Background Script instance
113
8.1.4.4 Send and receive int data
Send the int type data
114
8.1.4.5 Send and receive hex data
Background to send and receive the hex format data
115
116
9 Industrial fieldbus communication
9.1 Remote operation of the robot
117
Pic9.2.2 connect
You can select the Register later directly, as shown in the figure below:
Pic9.2.3 Register
Click to determine.
Set the connected IP and port number, as shown in the figure below:
118
Pic9.2.5 Interface
As shown in the figure below:
Pic9.2.6 Interface
Function: Select 01 Read Coils (0X).
Address: Set here is the starting address of the monitoring, and what we set here is 0
Quantity: Set the total number of monitored addresses, what we set here is 100.
Click ok, and the Settings are complete,
As shown in the figure below:
119
Pic9.2.7 Interface
100 io states.
How to set the status of a certain IO, such as setting the IO of the address 39, the specific IO
mapping, each version is different, specifically view the corresponding version of the IO mapping
table, here we set the status of 39 IO.
Pic9.2.8 Interface
Double-click on the address of 39, as shown below:
Pic9.2.9 Interface
If you want to set OFF for IO at address 39, set the value option to OFF, otherwise set the value
option to ON. After selection, select Send. The robot will also respond to the data, answer OK, as
shown in the figure below, the result will have the option bar with Response ok:
120
Pic9.2.10 Interface
Check if the IO status of the robot is correct.
Read input register address (only new version)
The read and write data area of the robot is V900-V999, and the corresponding hold register
address of modbusTCP is 0-199.
Select the function code 03 to read the robot coordinates, as shown in the following figure:
Pic9.2.11 Interface
The V variable of a robot occupies two registers, with high address in high data and low data in low
data. Example address 0 storage variable 16 bits lower address, address 1 storage variable 16 bits
higher address.
As shown in the figure below:
Pic9.2.12 Interface
121
This display is the tool coordinates that the robot currently performs.
Here are the steps to resolve the coordinate values, using addresses 4 and 5 as a set of examples:
Address 4, decimal is 30671 converted to 16 decimal is 0X77CF, address 5 is 10 decimal 17142,
converted to 16 decimal 0X42F6, so the stored data is 0X42F677CF, the floating point number
corresponding to this data is 123.234.
See the value of the robot V902 as shown in the figure below:
Pic9.2.13 V variable
The actual value is 123.234001, and the calculated 123.234 this is due to the float accuracy
relationship. Other coordinate values are also the same way.
Write register address
The read and write data area of the robot is V900-V999, and the corresponding hold register
address of modbusTCP is 0-199.
If we want to write the data into the robot variable through the modbus, we need to use the
modbus write register operation. We use the function code 16 Write Multiple Registers to write
data to the register, address 0-11, as shown in the figure below:
Pic9.2.14 Interface
122
Pic9.2.15 Interface
Double-click the address, you can write data to it, as shown in the figure below. Address 0 and
address 1 correspond to 1 set of data.
Pic9.2.16 Interface
The data is filled in similar to the above reads. For example, we want to deposit-1444.614 into the
V900 variable of the robot, and first convert the decimal-1444.614 into 16 decimal 0XC4B493A5.
Convert 160XC4B4 into 1050356 write address 1, and 160X93A5 into 1037797 write address 0, as
123
shown in the figure below:
In the writing process, it may not be written in, such as the following warning;
Pic9.2.17 Interface
Set the type of the input data shown in the following below:
Pic9.2.18 Interface
The final Display was modified to be a Unsigned.
Robot V variable
124
Pic9.2.19 V variable
The V900= -1444.613892 and the expected write-1444.614 gap is a float accuracy problem.
9.3 MC protocol 3E frame format
Based on the Mitsubishi 5U series PLC and the robot for MC protocol communication, the message
follows the 3E frame format.
The robot is the main station, active poll PLC.
V900-V903, robot-read-only. V900 corresponds to D7002 + D7003 of PLC, V901 to D7004 + D7005,
V902 to D7006 + D7007 and V903 to D7008 + D7009; PLC is stored in float type
V904-V907, the robot is written only. V904 corresponds to D2 + D3 of PLC, V905 corresponds to D4
+ D5, V906 corresponds to D6 + D7 and V907 corresponds to D8 + D9; PLC is extracted as float type
DI23-DI55, robot-read-only. D7000 + D7001 of PLC with two-word type
DO 00-D031, the robot writes only. D0 + D1 of PLC, with two-word type
The robot uploads the data
Deputy head of the message StrSet(UploadCmd, 7, 0x20)
StrSet(UploadCmd, 0, 0x50) StrSet(UploadCmd, 8, 0x00)
StrSet(UploadCmd, 1, 0x00) The CPU monitors the timer
Network number StrSet(UploadCmd, 9, 0x10)
StrSet(UploadCmd, 2, 0x00) StrSet(UploadCmd, 10, 0x00)
Programmable controller network number Instructions are written in batches
StrSet(UploadCmd, 3, 0xFF) StrSet(UploadCmd, 11, 0x01)
Request the target module I / O number StrSet(UploadCmd, 12, 0x14)
StrSet(UploadCmd, 4, 0xFF) Subdirectives
StrSet(UploadCmd, 5, 0x03) StrSet(UploadCmd, 13, 0x00)
Request the target module station number StrSet(UploadCmd, 14, 0x00)
StrSet(UploadCmd, 6, 0x00) Starting soft component address
Request data length StrSet(UploadCmd, 15, 0x00)
125
StrSet(UploadCmd, 16, 0x00) StrSet(UploadCmd, 22, IoOut_Var2)
StrSet(UploadCmd, 17, 0x00) StrSet(UploadCmd, 23, IoOut_Var3)
Soft component code D register StrSet(UploadCmd, 24, IoOut_Var4)
StrSet(UploadCmd, 18, 0xA8) Floating point number sent
Soft component points, the word is in units strsetfloat(UploadCmd,25,V904)
StrSet(UploadCmd, 19, 0x0A) strsetfloat(UploadCmd,29,V905)
StrSet(UploadCmd, 20, 0x00) strsetfloat(UploadCmd,33,V906)
Data on the number of soft elements strsetfloat(UploadCmd,37,V907)
StrSet(UploadCmd, 21, IoOut_Var1)
126
127
128
129
130
Robots to download the data
Deputy head of the message The CPU monitors the timer
StrSet(DownloadCmd, 0, 0x50) StrSet(DownloadCmd, 9, 0x10)
StrSet(DownloadCmd, 1, 0x00) StrSet(DownloadCmd, 10, 0x00)
Network number Instructions are written in batches
StrSet(DownloadCmd, 2, 0x00) StrSet(DownloadCmd, 11, 0x01)
Programmable controller network number StrSet(DownloadCmd, 12, 0x04)
StrSet(DownloadCmd, 3, 0xFF) Subdirectives
Request the target module I / O number StrSet(DownloadCmd, 13, 0x00)
StrSet(DownloadCmd, 4, 0xFF) StrSet(DownloadCmd, 14, 0x00)
StrSet(DownloadCmd, 5, 0x03) Starting soft component address
Request the target module station number StrSet(DownloadCmd, 15, 0x58)
StrSet(DownloadCmd, 6, 0x00) StrSet(DownloadCmd, 16, 0x1B)
Request data length StrSet(DownloadCmd, 17, 0x00)
StrSet(DownloadCmd, 7, 0x0C) Soft element code
StrSet(DownloadCmd, 8, 0x00) StrSet(DownloadCmd, 18, 0xA8)
Point number of soft components
StrSet(DownloadCmd, 19, 0x0A)
StrSet(DownloadCmd, 20, 0x00)
131
132
133
134
9.3 The FINS protocol
Background of the FINS protocol
135
136
137
138
139
140
141
142
9.4 EtherNetIP
9.4.1, the internal setting of the robot
1. The network port IP address of the robot is 192.168.1.3, subnet mask: 255.255.255.0, gateway:
192.168.1.0;
2. Open the Ethernet / IP switch and select the network card (view the network card name
connected in the Ethernet state);
Pic9.2.20 EtherNet/IP
3. The robot will power off and restart.
143
The FP-XH C40ET takes the Ethernet IP protocol communication as an example.
144
and the numerical reaction is in V900;
3, and reset after two seconds.
Robot front ground program
145
9.5 network instructions in Xml format
9.5.1 TCP / IP communication configuration
The motion controller, as the function provider, will establish the TCP server and wait for a client
connection. The controller supports simultaneous access of multiple clients and send and receive
data. The total number of allowed connections is Linux the maximum number of network
connections allowed by a single process (currently 256). The motion controller handles all
connected clients simultaneously. The TCP server-side default port number is 8527. To use the
network command described below, check the Use Standard XML format item.
146
<Cmd Name= "Command 1" CmdCont= "callback function pointer" Status= "status">
<Param parameter 1= "Value" Parameter 2= "value" />
<Data> Data </ Data>
</Cmd>
......
<Cmd Name= "Command n" CmdCont= "Pullback Function Pointer" Status= "Status">
<Param parameter 1= "Value" Parameter 2= "value" />
<Data> Data </ Data>
</Cmd>
</Bodys>
First behavior xml header, using the " Turin.Robot. V2.0 "As the version attribute value, it is not a
non-standard practice. If you use the libxml library to read and write xml, you can change it to" 1.0
".
Bodys The label carries all the command packets, and each Cmd label is a complete command. To
request multiple commands simultaneously, you can place all the requested commands into the
bodys label.
Introduction to the Cmd labels:
1, Name attribute description command name, such as Login for login, Logout for login.
2. The CmdCont attribute does not have practical significance. I suggest in this article that we
process the command for its storage client
The callback function or the callback class of the return package of. If this attribute is not required,
you can not use (deleted) it.
3. The Status attribute describes the status of the command. When the client sends Send, when the
client receives the receipt, it may be Recv or Error. Recv means that the command execution is
normal, and Error means that the command execution fails.
The Param label describes some parameters of this command, which are supported by each
command.
Note: In some commands, the parameter attribute returns the command execution result.
Like reading the profile item command.
The Data label has no attribute and only values. This label is generally used to access large data.
Binary data can be transferred to base64 transfer.
147
9.5.4 Command introduction
LoopBack
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="LoopBack" CmdCont="0" Status="Send">
<Param currentMSecsSinceEpoch = "Time" sendTimes = "Number of communication" />
</Cmd>
</Bodys>
This is an unnecessary command that we can use as a heartbeat packet, calculate communication
delays, or record the number of contracts. The server receives this command and only returns the
Status property of its Cmd label to Recv.
1. The parameter attribute currentMSecsSinceEpoch is the current client system time.
2. The parameter attribute sendTimes is the number of times the client can add 1 for each client
package.
The server returns the package as follows:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="LoopBack" CmdCont="0" Status="Recv">
<Param currentMSecsSinceEpoch = "Time" sendTimes = "Number of newsletters" /> </ Cmd>
</Bodys>
We can calculate the packet delay by using the current system time minus the time recorded in the
currentMSecsSinceEpoch.sendTimes Show exactly which packet is being returned
pour:
1) It is recommended that this command be used in combination with other commands, especially
not alone.
2) In essence, the content in Cmd, Param and other labels is arbitrary.
Login
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Login" CmdCont="0" Status="Send">
<Param UserName = "User name" Password= "password" />
</Cmd>\n"
</Bodys>
Of all the network commands, some commands need to be logged in for use. Such as writing files,
etc. The Turin Network Command is a secondary development method, and we do not currently
intend to increase the difficulty of development here for our secondary development users. So as
long as you log in to any user, you can use all the commands. The four accounts we provide are for
limited end-users only.
The optional users of the parameter attribute UserName are operator, programmer, administrator,
developer.
The parameter property Password is the login password.
148
The command execution is returned as follows
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Login" CmdCont="0" Status="Recv">
<Param UserName = "User name" Password= "password" />
<Data>OK</Data>
</Cmd>\n"
</Bodys>
The packet is returned as follows
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Login" CmdCont="0" Status="Error">
<Param UserName = "User name" Password= "password" />
<Data> ERR: the account password is incorrect</Data>
</Cmd>\n"
</Bodys>
Logout
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Logout" CmdCont="0" Status="Send"/>
</Bodys>
Log out of the current account.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Logout" CmdCont="0" Status="Recv"/>
<Data>OK</Data>
</Bodys>
The command will not fail.
Account
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Account" CmdCont="0" Status="Send">
<Param UserName = "Username" OldPassword= "Old Password" NewPassword = "New Password"
/> </ Cmd>
</Bodys>
Modify the user password
1) The optional users of the parameter attribute UserName are operator, programmer, administrator,
and developer.
2) The parameter attribute OldPassword is the old password
3) The parameter attribute NewPassword was successfully returned for the new password:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
149
<Bodys>
<Cmd Name="Account" CmdCont="0" Status="Recv">
<Param UserName = "User name" OldPassword= "Old Password" NewPassword = "New Password"
/> <Data> OK </ Data>
</Cmd>
</Bodys>
Failure to return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Account" CmdCont="0" Status="Error">
<Param UserName = "Username" OldPassword= "Old Password" NewPassword = "New Password"
/> <Data> ERR: the account password is incorrect </ Data>
perhaps
<Data>ERR:the account does not exist</Data>
</Cmd>
</Bodys>
Jog
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Jog" CmdCont="0" Status="Send">
<Param Mode = "click mode" Motion = "coordinate system" Operate= "start-stop" Axis = "axis
number" Speed= "percentage" Offset = "whether" TarPos= "position" />
</Cmd>
</Bodys>
1) The optional value of the parameter attribute Mode is 1 or 2. 1 represents planning using an
S-shaped velocity curve, and 2 represents planning using a trapezoidal velocity curve. If there is no
special requirement, it is recommended to use the mode 2;
2) The valid value of parameter attribute Motion is 1 to 5, and other values or no values are used
gui. Values in the ini. Value 1 is the joint instruction, 2 for the base coordinate direction, 3 for the
tool direction, 4 for the user direction, and 5 for the shimachine. If you do not understand, please
refer to the teaching mode function of the robot interface.
3) The value of the parameter attribute Axis depends on the Motion value,
When Motion is 1, the Axis value range is 1 to 9, representing the 1 to 9 axis;
When Motion is 2 / 3 / 4, Axis value range is 1 to 6, representing X, Y, Z, RX, RY, RZ and so on 6 axes;
For Motion 5, the Axis value ranges from 1 to 6,1 to 3 indicate non-cooperative point changer 1 to 3
axes, and 4 to 6 represent cooperative point changer 1 to 3 axes.
4) The value range of the parameter attribute Speed is 0 to 25, indicating the percentage of the
speed to the maximum speed when the point moves.
5) The optional value of the parameter attribute Offset is true or false, and the false value is
generally used.
6) The value range of the parameter attribute TarPos is a real number. When Offset is true, TarPos
represents an offset, otherwise TarPos represents an absolute value. When Motion is 1 or 5, the
maximum and minimum values of TarPos can refer to the maximum and minimum values of each
150
joint, and when TarPos is 2 / 3 / 4, TarPos does not need to give a value, because the maximum or
minimum value of TarPos cannot be calculated. When clicking, the robot moves to the wingspan
limit.
7) The optional value of the parameter attribute Operate is start and stop, indicating the start / stop
single axis, note that the start and stop start and stop Motion are described together with Axis.
Instead of starting and stopping all the axles. To stop all axes, use the MotionStop command;
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Jog" CmdCont="0" Status="Recv">
<Param Mode = "Spot mode" Motion = "Coordinate system" Operate= "Start-stop" Axis = "Size"
Speed= "Percent" Offset = "whether" TarPos= "Position" /> <Data> OK </ Data>
</Cmd>
</Bodys>
Failure to return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
MotionStart
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="MotionStart" CmdCont="0" Status="Send">
<Param UseInThread = "whether" IsGcode = "whether" MainFileName = "primary program"
StartFileName = "subprogram" StartLine = "start" line "ExeLines =" execution line "ExeLoops ="
number of cycles " />
<Data> script content </ Data>
</Cmd>\n"
</Bodys>
Start the script
1) The optional value of the parameter attribute UseInThread is true or false. If there are no special
requirements, please use false;
2) The optional value of the parameter attribute IsGcode is true or false. This controller only
supports a small amount of G code, so please use false;
3) The parameter attribute MainFileName is the main program name started (do not have the suffix
name);
4) The parameter attribute StartFileName is the name of the startup child (not with the suffix name).
We cannot start the script directly in the subroutine, so the attribute value should be consistent
with the MainFileName attribute value for the first time. If you want to continue in the subroutine.
StartFileName Should be the subroutine name;
5) The parameter attribute StartLine is the starting line;
6) The parameter attribute ExeLines is the number of rows to be executed, given 1 for single step
and 0 for reproduction;
7) The parameter attribute ExeLoops is the number of times to be executed, usually 1, less than 0.
151
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="MotionStart" CmdCont="0" Status="Recv">
<Param UseInThread = "whether" IsGcode = "whether" MainFileName = "primary program"
StartFileName = "subprogram" StartLine = "start" line "ExeLines =" execution line "ExeLoops ="
number of cycles " />
<Data>OK</Data>
</Cmd>\n"
</Bodys>
Failure to return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="MotionStart" CmdCont="0" Status="Error">
<Param UseInThread = "whether" IsGcode = "whether" MainFileName = "primary program"
StartFileName = "subprogram" StartLine = "start" line "ExeLines =" execution line "ExeLoops ="
number of cycles " />
<Data> ERR: error prompt </ Data>
</Cmd>\n"
</Bodys>
<Cmd Name="Jog" CmdCont="0" Status="Error">
<Param Mode = "Point Action mode" Motion = "Coordinate system" Operate= "Start-stop" Axis =
"Axial" Size "Speed=" Percent "Offset =" whether "TarPos=" position " /> <Data> ERR: mode error </
Data>
</Cmd>
</Bodys>
In most cases, it is recommended that this command be used in conjunction with configuration files,
so some parameters can be omitted. The example format is as follows:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Jog" CmdCont="0" Status="Send">
<Param Mode = "Spot mode" Operate= "Start-stop" Axis = "shaft number" TarPos= "Position" /> </
Cmd>
</Bodys>
Note The Offset and TarPos properties are invalid when Mode is 1
MotionStop
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="MotionStop" CmdCont="0" Status="Send"/>
</Bodys>
Stop all motion movements
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
152
<Bodys>
<Cmd Name="MotionStop" CmdCont="0" Status="Recv"/>
<Data>OK</Data>
</Bodys>
The command will not fail
ClearRobotError
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name=" ClearRobotError" CmdCont="0" Status="Send"/>
</Bodys>
Try to clear the system error. Including drive errors, controller errors, and bus errors.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name=" ClearRobotError" CmdCont="0" Status="Recv"/>
<Data>OK</Data>
</Bodys>
The command will not fail, but may not be able to clear the error.
ReadDir
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ReadDir" CmdCont="0" Status="Send">
<Param CWD = "Working path" Dir = "Relative path" Recursive= "Whether" Filter = "filter" Format =
"Output Format" Sorting= "Sort" Coding = "Base64" />
</Cmd>
</Bodys>
Go through the file / folder in the specified path
1) The optional values of the parameter attribute CWD (current work dir) are Abs, Motion,
Backprogram, Config,
Log,Bin;
Abs indicates that the working path is not specified
Motion Working path is / home / turin /.turin/motion
Backprogram Working path is / home / turin /.turin/backprogram
Config Working path is / home / assn /. Turin / configs / ethercat_x86 (practical version) or / home /
assn /. The turin / configs / simulation (analog version)
The Log working path is / home / turin /.turin/log
Bin working path is / us r/s are / turin / bin
2) The parameter attribute Dir specifies the relative path. In general, when CWD gives the non-Abs
value, this attribute should not give the value;
3) The parameter attribute Filter specifies the suffix name that needs to be traversed, and multiple
suffixes are separated by ",";
4) The parameter attribute Sorting specifies the collation, 0 indicates the name sorting, 1 represents
153
the modification time sorting, and 2 indicates the file size sorting. For other values, please refer to
the following macro definition;
enum SortFlag {Name= 0x00,
Time= 0x01,
Size=0x02,
Unsorted= 0x03,
SortByMask = 0x03,
DirsFirst= 0x04,
Reversed= 0x08,
IgnoreCase = 0x10,
DirsLast= 0x20,
LocaleAware = 0x40,
Type = 0x80,
NoSort = -1
};
5) Parameter attributes Format optional values have Full or Simple, Simple only lists file names, Full
also has file size, creation time and whether it is folder attributes. Please analyze the specific format
yourself when receiving the return package;
6) Parameter attribute Recursive The optional parameter is true or false. When Recursive is true,
the Format parameter is invalid, and the traversal result output format is a new format (different
from both Full and Simple of Format). Please analyze the specific format yourself when receiving
the return package;
7) Parameter attribute Coding The optional parameter is Base64. When Coding is Base64, the values
in all Data tags will be transferred to Base64 format.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ReadDir" CmdCont="0" Status="Recv">
<Param CWD = "Working Path" Dir = "Relative Path" Recursive= "Whether" Filter = "filter" Format =
"Output Format" Sorting = "Sort" Coding = "Base64" /> <Data> Content </ Data>
</Cmd>
</Bodys>
The command will not fail
ReadFile
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ReadFile" CmdCont="0" Status="Send">
<Param CWD = "Working path" FileName = "File name" Coding = "Base64" Offset = "Offset" MaxLen
= "Read length" />
</Cmd>
</Bodys>
Read the file
1) The optional values of the parameter attribute CWD (current work dir) are Abs, Motion,
154
Backprogram, Config, Log, Bin. For a specific introduction to the each value, please refer to the CWD
parameter properties in the ReadDir command;
2) Parameter attribute Coding The optional parameter is Base64. When Coding is Base64, all the
value content in the Data labels will be transferred to Base64 format;
3) Parameter attribute FileName specify the file name;
4) The parameter attribute Offset specifies the read position, and indicates the scratch read to 0;
5) The parameter attribute MaxLen specifies the number of read bytes, and 0 reads the entire file;
Note: When reading large files, they can be read in sections using the Offset and MaxLen
parameter properties.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ReadFile" CmdCont="0" Status="Recv">
<Param CWD = "Working path" FileName = "File name" Coding = "Base64" Offset = "Offset" MaxLen
= "Read length" and /> <Data> Content </ Data>
</Cmd>
</Bodys>
Failure to return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ReadFile" CmdCont="0" Status="Error">
<Param CWD = "Working Path" FileName = "File Name" Coding = "Base64" Offset = "Offset" MaxLen
= "Read Length" /> <Data> Error Content </ Data>
</Cmd>
</Bodys>
WriteFile
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="WriteFile" CmdCont="0" Status="Send">
<Param CWD = "Working path" FileName = "File name" Coding = "Base64" Append = "Yes"
LoadConfig = "Yes" /> </ Cmd>
</Bodys>
Write a file
1) The optional values of the parameter attribute CWD (current work dir) are Abs, Motion,
Backprogram, Config, Log, Bin. For a specific introduction to the each value, please refer to the CWD
parameter properties in the ReadDir command;
2) Parameter attribute Coding The optional parameter is Base64. When Coding is Base64, all the
value content in the Data labels will be transferred to Base64 format;
3) Parameter attribute FileName specify the file name;
4) Parameter attribute Append optional values have true and false. True represents additional write,
and false represents replace write;
5) The parameter attribute LoadConfig optional values have true and false. The true indicates
155
loading the profile to the controller system after writing. Generally, when writing configuration files,
they should be given to true, and other files should be given to false;
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="WriteFile" CmdCont="0" Status="Recv">
<Param CWD = "Working path" FileName = "File name" Coding = "Base64" Append = "whether"
LoadConfig = "Yes" /> <Data> OK </ Data>
</Cmd>
</Bodys>
Failure to return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="WriteFile" CmdCont="0" Status="Error">
<Param CWD = "Working path" FileName = "File name" Coding = "Base64" Append = "whether"
LoadConfig = "whether" />
<Data> Error Content </ Data>
</Cmd>
</Bodys>
ReadConfigFile
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ReadConfigFile" CmdCont="0" Status="Send">
<Param FileName = "Profile name" Sec = "segment" Key= "key" />
</Cmd>
</Bodys>
Read the profile contents in the config (see ReadDir command) directory.
1) The parameter attribute FileName specifies the file name.
2) Parameter attribute Sec-specified segment
3) Parameter attribute Key specifies the key
Successful return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ReadConfigFile" CmdCont="0" Status="Recv">
<Param FileName = "Config file name" Sec = "segment" Key= "Key" Value= "value" />
<Data> Value </ Data>
</Cmd>
</Bodys>
pour:
1) Considering the forward compatibility, the read results are placed in both the Data label and the
parameter attribute Value.
2) When worthless, the value of the Data label and parameter attribute Value is empty.
156
Failure to return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ReadConfigFile" CmdCont="0" Status="Error">
<Param FileName = "Profile name" Sec = "segment" Key= "key" />
<Data>ERR: File name is null</Data>
</Cmd>
</Bodys>
WriteConfigFile
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="WriteConfigFile" CmdCont="0" Status="Send">
<Param FileName = "File name" Sec = "Segment" Key= "Key" Value= "value" />
</Cmd>
</Bodys>
Write the profile contents in the config (see ReadDir command) directory.
1) The parameter attribute FileName specifies the file name.
2) Parameter attribute Sec-specified segment
3) Parameter attribute Key specifies the key
4) The parameter attribute Value specifies the value
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="WriteConfigFile" CmdCont="0" Status="Recv">
<Param FileName = "File name" Sec = "Segment" Key= "Key" Value= "value" />
<Data>OK</Data>
</Cmd>
</Bodys>
Failure to return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="WriteConfigFile" CmdCont="0" Status="Error">
<Param FileName = "File name" Sec = "Segment" Key= "Key" Value= "value" />
<Data>ERR: File name is null</Data>
</Cmd>
</Bodys>
GetGuiLog
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetGuiLog" CmdCont="0" Status="Send">
<Param Length = "The number of reads," />
157
</Cmd>
</Bodys>
Read the interface log information
1) The parameter attribute Length specifies the number of reads for this time
This command reads all the logs in the log pool in sequence. The Data label for this command
returns null values when no new logs are present in the log pool.
Note: Each client has a separate log pool, so there are no conflicts even when multiple clients
read logs at the same time.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetGuiLog" CmdCont="0" Status="Recv">
<Param Length = "The number of reads," />
<Data> Log Content </ Data>
</Cmd>
</Bodys>
The command will not fail
GetCurrAllPos
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetCurrAllPos" CmdCont="0" Status="Send">
<Param Tool = "Tool No." User = "User number" />
</Cmd>
</Bodys>
Read the position information of each coordinate system of the robot.
1) Parameter attribute Tool specifies the tool number and range from 0 to 10. Worvalue uses the
tool number currently in use
2) The parameter attribute User specifies the user number, taking the value range from 0 to 10.
Worvalue uses the user number currently in use
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetCurrAllPos" CmdCont="0" Status="Recv">
<Param Tool = "Actual Tool Number" User = "Actual User Number" /> <Data> Location Value </
Data>
</Cmd>
</Bodys>
The location value format is as follows:
Servo: Nine servo-encoder values, separated by a comma
Joint: Nine joints, separated by the commas
World: Nine untool space values, followed by X, Y, Z, RX, RY, RZ, joints 7 to 9, separated by a comma
Tool: Nine toolspace values, followed by: X, Y, Z, RX, RY, RZ, joints 7 to 9, separated by a comma
158
User: Nine user space values with tools, followed by: X, Y, Z, RX, RY, RZ, joints 7 to 9, separated by a
comma
The command will not fail
GetSystemRunningStatus
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetSystemRunningStatus" CmdCont="0" Status="Send"/>
</Bodys>
Read the robot running status information. This command has no parameters. The status data
returned is a bit complicated.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetSystemRunningStatus" CmdCont="0" Status="Recv"/>
<Data> System running status </ Data>
</Cmd>
</Bodys>
The system running status format is as follows
EffectiveServoConst: Number of effective servo / joint
ServoStatusWord: 916 decimal Ethercat status words, separated by a comma
ServoControlWord: 916 decimal Ethercat controls, separated by a comma
MotionControlMode: Motion controller mode,
ControlModeStatusTimes: Number of changes in the motor control state
MotionExecFileName: The text motion script file name that is currently running
MotionStatus: Movement status
MotionExecLine: The row currently being executed
MotionStatusTimes: Number of movement state changes
backProgState: 9 background program execution status, separated by a comma
The motion controller mode is defined as follows:
typedef enum task_control_mode{
tcm_null =0x0, //
tcm_motion_error = 0x1, // dyskinesia
tcm_call_back_error = 0x2, / / EtherCat bus communication is
abnormal
tcm_alarm = 0x4, / / Servo alarm
tcm_teach = 0x8, // teach
tcm_loop = 0x10, // reappear
tcm_enable = 0x20, / / Have enabling
tcm_emergency = 0x40, // jerk
tcm_safety_door_open = 0x80, / / Security door open
tcm_anti_collision =0x100, // collide
tcm_inactivated = 0x200, / / Activation failed
tcm_battery_low = 0x400 / / Low battery voltage
159
}task_control_mode;
Operating status is: error, stopped, stopping, running, jogging
The daemon execution status is defined as follows:
typedef enum {
BACKGROUND_PROGRAM_STATUS_ERROR = -1,
BACKGROUND_PROGRAM_STATUS_STOPED = 0
BACKGROUND_PROGRAM_STATUS_STOPING = 1
BACKGROUND_PROGRAM_STATUS_STARTING = 2
BACKGROUND_PROGRAM_STATUS_RUNING = 3
}background_program_status;
The command will not fail
Variable
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Variable" CmdCont="0" Status="Send">
<Param Comment = "Is" CWD = "working path" FileName = "file name" /> <Data> </ Data>
</Cmd>
</Bodys>
Read and write system and file variables
1) The optional values of the parameter attribute CWD (current work dir) are Abs, Motion,
Backprogram, Config, Log, Bin. For the specific introduction of each value, please refer to the CWD
parameter properties in the ReadDir command;
2) Parameter attribute FileName to specify the file name of the file variable;
3) The parameter attribute Comment optional parameters are true and false, and the true value
represents the read and write variable annotation information. CWD and FileName properties
without reading and writing system variables;
The operational system variables are V0 to V999 (real variable), S0 to S999 (1024-byte length
character variable), P0 to P999 (P point variable);
Operational file variables are FV 0 to FV999 (real variable), FS0 to FS999 (1024 byte length character
variable), FP0 to FP999 (P point variable);
1) Read a single V variable without annotation: "V0 \ nV 9". Return: "V0= value \ nV9= value";
2) Read multiple V variables without annotation: "FV 0-FV 9". Return: "FV 0 = value \ n FV 1 = value
\ n...... FV 9 = value";
3) Read an annotated single V variable: "V0 \ nV 9". Return: "V0= Value: Comment =" Annotation "\
nV9= value: Comment =" Annotation ""
4) Read multiple V variables with annotation: "FV 0-FV 9". Return "FV 0 = value: Comment ="
annotation "\ n FV 1 = value: Comment =" annotation "\ n...... FV 9 = value: Comment =" Annotation
"";
5) Read the individual S variable without annotation: "FS10 \ nFS 21". Return: "FS10=" Value "\ nFS
21 =" Value "";
6) Read multiple S variables without annotation: "S33-S29". Note: Order doesn't matter. Return:
"S29=" Value "\ nS 30 =" Value "\ n...... S33=" Value "";
7) Read the individual S variable with annotation: "FS10 \ nFS 21". Return: "FS10=" Value ":
160
Comment =" Note "\ nFS 21 =" Value ": Comment =" Comment "";
8) Read multiple S variables with annotation: "S33-S29". Return: "S29=" Value ": Comment ="
Annotation "\ nS 30 =" Value ": Comment =" Annotation "\ n...... S33=" Value ": Comment ="
Annotation "";
9) Read a single P variable without annotation: 'P13 \ nP 199'. Return: "P13=" Value "\ nP 199 ="
Value "";
10) Read multiple P variables without annotation: "FP16-FP18". Return: "FP16=" Value "\ nFP 17 ="
value "\ nFP 18 =" value "";
11) Read the individual P variable with annotation: "P122 \ nP 730". Return: "P122=" Value ":
Comment =" note "\ nP 730 =" Value ": Comment =" note ""
12) Read multiple P variables with annotation: "FP666-FP777". Returns "FP666=" Value ": Comment
=" Note "\ nFP667=" Value ": Comment =" Note "\ n...... FP777=" Value ": Comment =" Annotation"
P variable value format: "P001 =" J1= value J2= value J3= value J4= value J5= value J6= value J7=
value J8= value J9= value X= value Y= value Z= value RX = value RY = value RZ = value J7= value J8=
value J9= value T= value U= value "";
13) Write to a single V variable without comments: "V0= -9 \ nV 9 = 10.6". Return: no return value;
14) Write to multiple V variables without comments: "FV 0-FV 9 = 0". FV 0 to FV 9 is set to 0, return:
no return value;
15) Write a single V variable with comments: "V0= value: Comment =" comment "\ nV 9 = value:
Comment =" comment "". Return: no return value;
16) Write multiple V variables with notes: "FV 139-FV 129 = 16: Comment =" Pending "". Set FV129
to FV139 to 16 and note to pending. Return: no return value;
17) Write to a single S variable without a comment: "FS10=" value "\ nFS 21 =" value "". Return: no
return value;
18) Write multiple S variables without comments: "S44-S33=" "". Empty the S33 to S44 variables.
Return: no return value;
19) Write a single S variable with a note: "FS10=" Value ": Comment =" note "\ nFS 21 =" Value ":
Comment =" note "". Return: no return value;
20) Write multiple S variables with comments: "S180-S290=" ok ": Comment =" wait "". Set S180 to
S290 to ok and change notes to wait. Return: no return value;
21) Write to a single P variable without a comment: "P13=" value "\ Np 199 =" value "". Return: no
return value;
22) Write multiple P variables without comments: "FP16-FP18=" value ". Return: no return value;
23) Write a single P variable with comments: "P122=" value ": Comment =" comment "\ nP 730 ="
value ": Comment =" comment "". Return: no return value;
24) Write multiple P variables with comments: "FP666-FP777=" value ": Comment =" comment "".
Return: no return value;
P variable value format: "P001 =" J1= value J2= value J3= value J4= value J5= value J6= value J7=
value J8= value J9= value X= value Y= value Z= value RX = value RY = value RZ = value J7= value J8=
value J9= value T= value U= value"
25) Write the current position of the robot to the P variable: "FP666-FP777=" CurrentPosition ""
pour:
1) The write and read of multiple variables can be used together;
161
2) If there is no read or write, then the command will return OK;
3) If the writing format is wrong, the prompt for the line where the writing error appears is
returned.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Variable" CmdCont="0" Status="Recv">
<Param Comment = "Is" CWD = "working path" FileName = "filename"? /> <Data> Results </ Data>
</Cmd>
</Bodys>
The command will not fail
InputOutput
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="InputOutput" CmdCont="0" Status="Send">
<Param Comment = "whether" />
<Data> Input / Output </ Data>
</Cmd>
</Bodys>
Read and write the input / output devices
1) Parameter attribute Comment The optional parameters are true and false, and the true value
represents the annotation information of read and write input / output points.
Operational system input / output equipment points are:
DI0 to DI199 (IO input).
DO 0 to DO 199 (IO output).
AD0 to AD99 (analog input).
DA0 to DA99 (analog output).
The values of DI and DO are 1 and 1.
The value ranges for DA and AD are real numbers.
InputOutput The data format is basically the same as Variable. Here is an example:
DI18-DI39=1: Comment = "Note"
DI180-DI39=0
DO199-DO88
DI69
DO69
AD18-AD39=1.0: Comment = "Note"
DA99-DA88
AD18-AD39= -10.0: Comment = "Note"
DA99-DA88
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="InputOutput" CmdCont="0" Status="Recv">
162
<Param Comment = "whether" />
<Data> Results </ Data>
</Cmd>
</Bodys>
pour:
1) The writing and reading of multiple devices can be used together;
2) If there is no read or write, then the command will return OK;
3) If the writing format is wrong, the prompt of the line where the writing error appears will be
returned;
The command will not fail
IO
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="IO" CmdCont="0" Status="Send">
<Param Oper = "Read / write" Type = "for the input / output" />
<Data> IO Value </ Data>
</Cmd>
</Bodys>
Read and write IO devices, which can only operate the first 100 IO inputs and the first 100 IO
outputs
1) The optional values of the parameter attribute Type are InputOutput, Input and Output.
InputOutput Represents operational input IO and output IO, Input means only input IO, and Output
means only output IO.
2) Parameter attribute The optional parameters of Open include Get and Set. Get represents the
reading device and Set represents the writing device. A successful Set operation returns OK, and a
successful Go operation returns a continuous set of values. The format of the Get + InputOutput
operation results is as follows:
An array of 100 '0' or '1' \ n an array of '0' or '1' output status characters'
The Get + Input operation result format is as follows:
The input state character array composed of 100 '0' or '1', the Get + Output operation result format
is as follows:
'A hundred array of output status characters consisting of' 0 'or' 1 ''
Successful return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="IO" CmdCont="0" Status="Recv">
<Param Oper = "Read / write" Type = "for the input / output" />
<Data> Results </ Data>
</Cmd>
</Bodys>
The command will not fail.
BckprogramStart
163
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="BackprogramStart" CmdCont="0" Status="Send">
<Param Index = "background index" FileName = "start file name" Restart = "is" />
</Cmd>
</Bodys>
Start a daemon. Currently, there can be 9 background programs to run at the same time
1) The parameter attribute Index specifies the background index to operate, ranging from 1 to 9
2) The parameter attribute FileName specifies the background file name
3) The parameter attribute Restart optional value is true or false. The true stops before starting.
Successful return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="BackprogramStart" CmdCont="0" Status="Recv">
<Param Index = "background index" FileName= "start file name" Restart = "whether" /> <Data> OK
</ Data>
</Cmd>
</Bodys>
Failure to return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="BackprogramStart" CmdCont="0" Status="Error">
<Param Index = "Background index" FileName = "Start file name" Restart = "whether" /> <Data> ERR:
Error prompt </ Data>
</Cmd>
</Bodys>
BackprogramStop
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="BackprogramStop" CmdCont="0" Status="Send">
<Param Index = "Background index" />
</Cmd>
</Bodys>
Stop the background program
1) The parameter attribute Index specifies the background index to operate, and the value range
from 1 to 9 returns successfully
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="BackprogramStop" CmdCont="0" Status="Recv">
<Param Index = "Background index" />
<Data>OK</Data>
</Cmd>
164
</Bodys>
Failure to return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="BackprogramStop" CmdCont="0" Status="Error">
<Param Index = "Background index" />
<Data>ERR: background program index number %d error</Data>
perhaps
<Data>ERR: background program stoping error</Data>
</Cmd>
</Bodys>
BackprogramLoadIniFile
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="BackprogramLoadIniFile" CmdCont="0" Status="Send">
<Param Restart = "whether" />
</Cmd>
</Bodys>
Stop reloading the daemon profile. BackprogramStart And BackprogramStop can realize online start
and stop background programs, but can not permanently maintain the start and stop state. If you
want to permanently operate the daemon status, you need to configure the Backprogram. Only
with the ini file. Call this command to take effect when the configuration is complete.
The optional value for the parameter property Restart has a figure or false. True stops all programs
and then starts the corresponding background program based on the background configuration
information.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="BackprogramLoadIniFile" CmdCont="0" Status="Recv">
<Param Restart = "whether" />
<Data>OK</Data>
</Cmd>
</Bodys>
The command will not fail.
Note: When the Backprogram. After the ini is reconfigured, you can also restart the controller
software system for a new configuration.
GetBackprogramState
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetBackprogramState" CmdCont="0" Status="Send">
<Param StartIndex = "Start index" EndIndex = "End index" />
165
</Cmd>
</Bodys>
Read the daemon status
1) The parameter attribute StartIndex specifies the start index.
2) The parameter attribute EndIndex specifies the end index.
When the start and end indexes are the same value, get the index status only.
Successful return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetBackprogramState" CmdCont="0" Status="Recv">
<Param StartIndex = "Start index" EndIndex = "End index" />
<Data> Index n state \ n \ n index n + 1 state \ n \ n............ Index m state </ Data>
</Cmd>
</Bodys>
The index status format is as follows:
Index: Background Index Number (1 to 9)
Enable: Whether Enabled (0 or 1)
BackProgFileName: File name when starting the background
MotionFileName: Front ground file name
State: Execution status (error, stopped, stopping, starting, running)
Control: Control status (error, stopped, stopping, starting)
FileName: The file name being executed
Line: executing row
Failure to return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetBackprogramState" CmdCont="0" Status="Error">
<Param StartIndex = "Start index" EndIndex = "End index" />
<Data>ERR: index error </Data>
</Cmd>
</Bodys>
GetMessageBoxContent
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="GetMessageBoxContent" CmdCont="0" Status="Send"/>
</Bodys>
Read the prompt information required to be immediately processed by the user. If you use the
MotionStart command and set the parameter attribute UseInThread to true, the system may
prompt you for some immediate user processing.
Such as: whether to continue to execute the script, whether to continue welding, etc.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
166
<Cmd Name="GetMessageBoxContent" CmdCont="0" Status="Recv"/>
<Data> Content </ Data>
</Bodys>
The content format is as follows
Title: Tip title
Icon: Tip Type (NoIcon, Information, Warning, Critical, Question)
Message: Warning information
Button: Button 1 content, button 2 content, button 3 content
The command will not fail
SelectMessageBoxButton
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="SelectMessageBoxButton" CmdCont="0" Status="Send">
<Param Button = "Button content" />
</Cmd>
</Bodys>
Upload the results of the user processing the GetMessageBoxContent command.
1) Parameter attribute Button puts the contents of the button selected by the user.
Successful return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="SelectMessageBoxButton" CmdCont="0" Status="Recv">
<Param Button = "Button content" />
<Data>OK</Data>
</Cmd>
</Bodys>
Failure to return
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="SelectMessageBoxButton" CmdCont="0" Status="Error">
<Param Button = "Button content" />
<Data> ERR: Select Button is null</Data>
perhaps
<Data> ERR: Message box is not open</Data>
</Cmd>
</Bodys>
Halcmd
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Halcmd" CmdCont="0" Status="Send">
<Param Arg1 = "Parameter 1" Arg 2 = "Parameter 2" />
<Data> Operation content </ Data>
167
</Cmd>
</Bodys>
Call to the Halcmd function.
1) Parameter attribute Arg 1 optional value: show, setp and sets.
2) Parameter attribute Arg 2 optional value: When Arg 1 is show, Arg 2 optional has pin and sig,
otherwise please leave blank.
Operation content format is:
1) Read (show) "Pin" or "signal", and return to "Pin value" or "signal value";
2) Write the pin (setp) "pin value", no return value;
3) Write the signal (sets) "signal value", no return value
pour:
1) If only write is not read, the OK or error message is returned.
2) For the specific required pins or signal names, please contact the software engineer.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="Halcmd" CmdCont="0" Status="Recv">
<Param Arg1 = "Parameter 1" Arg 2 = "Parameter 2" />
<Data> Operation Results </ Data>
</Cmd>
</Bodys>
The command will not fail
ChangeRobotSystemStatus
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ChangeRobotSystemStatus" CmdCont="0" Status="Send">
<Param Status = "System status" />
/Cmd>
</Bodys>
Switch system status
1) The optional values of the parameter attribute Status are:
A) ShutdownRobot (turn off the controller software interface)
B) RebootRobot (restart the controller software interface)
C. c) ShutdownSystem (OS off)
D) RebootSystem (restart of the operating system)
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="ChangeRobotSystemStatus" CmdCont="0" Status="Recv">
<Param Status = "System status" />
<Data>OK</Data>
/Cmd>
168
</Bodys>
The command does not return a failure, but the system does not necessarily respond. When the
system does not sound and should the command, a log reminder is issued.
LoadFile
Employer format:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="LoadFile" CmdCont="0" Status="Send">
<Param FileName = "Fename" Coding= "Base64" />
<Data> File Content </ Data>
</Cmd>
</Bodys>
The notification robot interface loads the script file
1) The parameter attribute FileName specifies the file name to be loaded.
2) Parameter attribute Coding The optional parameter is Base64. When Coding is Base64, all the
values in the Data tags will be transferred to Base64 format.
When the value of the Data label is not empty, the system writes its contents to the file name
specified by the FileName.
Note: This is a secondary command that only notifies the interface to switch pending files.
Successful return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="LoadFile" CmdCont="0" Status="Recv">
<Param FileName = "Fename" Coding= "Base64" />
<Data>OK</Data>
</Cmd>
</Bodys>
Failure to return:
<?xml version="Turin.Robot.V2.0" encoding="UTF-8"?>
<Bodys>
<Cmd Name="LoadFile" CmdCont="0" Status="Error">
<Param FileName = "Fename" Coding= "Base64" />
<Data> ERR: error message </ Data>
</Cmd>
</Bodys>
169
9.6 Class EtherCat communication
9.6.1 External Shaft
The Turin external axis is mainly divided into: rotation axis and walking axis control. At present, up
to 3 external axes can be extended on the original 6 axis system. That is, the seventh axis axis 8 and
axis 9 are the external axis. Extended external axis such as using the Turin system seventh and
eighth nine axis, motor drive to need Turin standard or designated brand. Non-Turin specified brand
motor systems will not be enabled.
9.6.1.1 Hardware configuration
Control cabinet wiring diagram
Here we add 1 motor as our seventh axis as an example. Here is a picture of the seventh axis in our
control cabinet.(Add axis 8, axis 9, please copy)
170
of the fuse, and the grounding wire is uniformly connected to the grounding row.
Network cable: one end of the network cable is connected to the sixth axis output port from the
seventh axis input port (the crystal heads at both ends can correspond one by one).
Lock relay: the positive pole of the relay coil is connected to the 24V + negative pole on the X3
terminal row, servo IO lock 3 foot, the two common ends are connected with a line to the 24V
power supply on the X2 terminal row is positive and negative, the corresponding two often open
point connected to the motor BK + and BK-.
Fuse wiring definition: input terminal connected to fire wire L on the left of X1 terminal row, output
connected to servo driver power supply R.
9.6.1.2 System configuration
The system configuration includes the ENI file copy, the ENI file selection, and the joint parameter
setting. ENI, the file is the communication file of the TURIN system master station for each servo
and each slave of the board, so the changes in the number of servo and IPO CAN digital
communication board need to change the ENI file. The system can only be used.
171
Pic9.6.3 Choose ENI file
Parameter setting —— System setting ——EtherCat —— Select ENI file —— Find the copy
success corresponding to the hardware. After xml file, click save to restart.
9.6.1.3 External axis collaborative calibration
Turin external axis cooperative calibration is divided into two types: rotating axis cooperative
calibration and walking axis cooperative calibration. The rotating axis is generally used for horizontal
rotation or vertical turnover; the walking axis is generally used for welding workpieces for a long
time, and the robot travel can not reach, but the robot is installed on the walking axis to moving.(No
setting and calibration are required when not coordinated)
The rotation axis is calibrcalibration
172
Pic9.3.4 Setting/Cali
Allow linkage: the linkage function of outer axis and robot body.
External axes 1 and 2 are combined: when two external axes are superimposed together.
Number of external axes: Select the number of external axes.
Calculated user coordinate system: refers to the three coordinate values recorded at the three
different angles of the recording transformer that coincide with the TCP of the robot tool
coordinates.(When recording these three coordinates, the robot should maintain the same attitude,
and the tool coordinate of the robot is TCP, and the accuracy should be less than 1mm)
7.1 When the seventh axis shifting machine is 0°, click the coordinate value record when the robot
TCP coincides with the fixed pin point on the shifting machine.
7.2 When the seventh axis transformer is 30 ° , when the robot TCP and the fixed thple point
coincide, click the coordinate value record on the transformer.
7.3 When the seventh axis transformer is 60 ° , when the robot TCP and the fixed thple point
coincide, click the coordinate value record on the transformer.
After the three coordinate points are recorded, click on the transformer to calculate, and then save
the point.(The eighth and ninth axes are the same ones.)
Cooperative calibration of the linear axis
173
Pic9.3.5 Setting/Cali
When calibration the walking axis, an auxiliary TCP tip (TCP error should be controlled within 1mm
as far as possible) should take three positions on the edge of a datum, and the three positions need
to be moved with the walking axis movement. After the coordinate value is recorded, the point
walking axis is successfully saved to obtain the results of the robot coordinate and the datum
parallel operation.
7.1 When the seventh axis is negative and the TCP of the robot coincides with the fixed thx point of
the reference surface.
7.2 When the walking axis of the seventh axis is the zero position and the robot TCP coincides with
the fixed thble point of the coordinate value of the reference surface.
7.3 When the seventh axis of the walking axis is positive and the TCP of the robot may stretch the
limit position coincides with the fixed thble point of the reference surface.
9.6.1.4 Cooperative calibration verification of external axes
When an auxiliary TCP tip for external axis calibration verification is required, the robot TCP is
aligned. At the auxiliary TCP tip as in the calibration, switch the coordinate system to the
transformer, switch the speed to 5%, verify the seven axes press J4-J4 +, and verify the eight and
nine axes press J5-J5 + and J6-J6 +. During the movement of point relocation, the robot body links
with the corresponding external axis and always follows the TCP point with the auxiliary TCP tip.
174
10 Universal industry process package
Turin Industrial Robot offers the following special process software packages for different
applications, including welding, palletizing, spraying and visual tracking. Turin will provide as many
process software packages as possible according to the practical application requirements.
10.1 Pallet
10.1.1 typical palletizing application
Tray: a user-defined robot worktop, usually flat.
Line: in a straight line parallel to the tray, vertical to the column.
Column: A straight line aligned to the working point in a plane parallel to the tray.
Layer: a plane where the robot needs to work and is parallel to the tray.
Serial number of the palletizing point: number the palletizing point according to the order of the
first and second column.
Pic10.1.1 palletizing
175
Pic10.1.2 Pallet setting
176
Pic10.1.3 Program preparation-1
177
Case 2 (stack to stack):
178
Pic10.1.6 Program preparation-4
179
10.2 Visual
10.2.1 visual basic setting
Visual process package needs to be connected to Ethernet, see above.
180
0,0,0,0 at NG;
7. Field storage start S: After receiving the data, the whole data will be stored in the S variable, and
then split according to the completed regular expression. The split results are stored in turn in the S
variable for the other addresses. Here is the first address of the beginning of the storage, which
supports up to 10 fields.
181
10.2.4 Program instance
182
10.2.5 using the background prog
Background program configuration:
Mon/Ctrl->Background cfg->Start/Stop cfg,16 groups of background programs can be configured
under the start-stop configuration
The background program and the movement program are different in the execution, the
background program will be repeatedly called by the system. When the background program thread
sets the motion program, the system starts the background program when the motion program is
running. When the running program is not set, the background program will start and stop as the
system starts and stops.
Background scripts use more flexible, for special agreements or protocol communication, generally
use the background script execution.
Pic10.2.6 Background
183
184
185
10.2.7 foreground program
186
Pic10.3.2 Wiring diagram
PWR: Power supply: 24VDC
XP1, XP2: Incremental encoder interface. Definition is shown above.
187
Pic10.3.3 Encoder
188
Pic10.3.5 Installation method-2
The following figure shows the installation mode of the conveyor belt speed is too low, and the
speed is calculated when the speed of the controller is often 0.
189
Pic10.3.8 Process Settings
190
Set how much distance the conveyor moves for equal spacing trigger.
Input DI
Set up the input IO.
Detection signal
Set the input signal.
Store start pt P
This is mainly designed for the disk project, which is used in a disk with each different fixed point, to
set the coordinate of the first one of each tracking, from which P point is read to the tracking point.
Number of piece
The number of artifacts set for the addition of a disk is also the location of how many tracking
positions there are in a circle, and the program automatically reads the tracking point from the P
point.
Note: the range of storage points, not and other groups of network configuration number storage
point range repeated, otherwise it will cause two coverage, set in monitoring / control after P point
coordinates, don't change the coordinates of P point, otherwise will cause the position of the
tracking point, cause accidents such as tracking failure.
10.3.4.2 Tracking
191
Sets the encoder serial number for the connection. Dual encoders are supported.
User num for trac:
The tracking process is based on this user coordinate system. Whether the user coordinates are
properly established or not determines whether the tracking can be implemented. The user
coordinate X direction should be parallel to the conveyor belt flow direction, as the direction vector
of the tracking direction.
Pos:
Read the encoding value in real time.
Speed:
Display the encoder speed of the read in real time.
Resolution:
Resolution of the encoder, in pulse / mm. The ratio of the code value to the true displacement of
the conveyor belt is required.
Dir:
Set the direction of the encoder.
X - limit, X + limit:
Set the interval for the tracking range. The tracking algorithm is based on the user coordinates. The
X direction of the user is the direction that the conveyor belt moves in. The value entered is the X
value of the user coordinates.
If the time arc track tracking, the setting here is the Angle, the Angle setting range is 0- -720,
according to the tracking range set by the user, part of the disk or the whole disk tracking.
Tracking coefficient:
Set the speed of the tracking.
Sampling period (public):
Code value fluctuations during the acquisition period.
Sample gap (pubilc):
In-cycle code value fluctuations are shown.
192
record to P3.
Note: When using the disk recording, first do the robot's tool calibration.
Calc:
After recording at three points, click to calculate. The disk radius and the center point are calculated.
The actual position of the robot to the center of the disk is compared to the radius of the disk, and
the same means that the calibration result is correct.
Note: click on the calculation and save, need to check, to ensure that the robot make disk
tracking calibration is correct, select calibration users and calibration tool number, and then in the
robot teaching interface, the user coordinates to X for 0, Y for 0, look at the robot tool point in the
center of the circle, if in the center of the circle, said the calibration is successful, radius if the radius
of the coder acquisition position.
Save to User:
Select a user number, and the calculated result will exist in the corresponding user coordinate
system.
Pic10.3.12 instruct
1.Follow init
193
Pic10.3.13 Follow init
Initialize the trace parameter.
parameter:
Parameter: indicates the network configuration serial number set above.
2. Follow set point
194
Pic10.3.15 Follow is in space
Gets whether the artifact is within the trace range and include the result in the V variable.
parameter:
V variable: Whether the artifact is in the tracking range is obtained in the specified V variable.
The obtained values have 3 possibilities, 0,1,2.
0: Indicates that the artifact has not yet entered the tracking range.
1: It means that the artifact is within the tracking range.
2: It means that the artifact is outside the tracking range.
4. Follow start sync
195
Pic10.3.17 Follow stop sync
End of tracking, the robot performs this command, and the robot begins to stop tracking.
6. Follow get state
196
7. Follow get point
197
9. Follow update point pos
198
Pic10.3.23 Procedure cases
199
10.4 Punch
10.4.1 General
Pic10.4.1 General
10.4.1.1 Ctrl options
Screen detec:
Can block the suction cup alarm, mainly used for debugging, automatic operation, please cancel the
shielding detection.
Path test:
After selection, the robot does not detect whether the punch signal meets the requirements, only
the trajectory.
Fixture 1 act
Switch button, each click, if the original suction cup is open, the original is closed, open.
Fixture 2 act
Switch button, each click, if the original suction cup is open, the original is closed, open.
10.4.1.2 Display options
Pick interference re
Shows whether the robot is in the feeding interference zone.
Place interferenc
200
Shows whether the robot is in the feeding interference zone.
Charging sign
Display the feeding signal status.
Punch E-stop
Show the state of the punch emergency stop signal.
Running peri
Displays the time the robot to run a full punch cycle.
Prestn mat st
Show whether there is any material in the previous station punch bed. If there is material in the
front station punch, but the stamping is not completed, it is also considered that the punch is not
material.
Product qual
Displays the production quantity of the current machine.
Reset
Zero up the production quantity.
Ctrl mode
asynchronous system.
Online mode
There are four modes of single machine, feeding, handling and unloading.
Cur stn mat st
There are three kinds of material conditions in this station, the punch without material, material to
be washed, material has been washed. This station is in the state, will send the to material signal.
Middle statior
Displays the current intermediate station name in four types.1. Discharge table.2. Gear, pneumatic
and oil press.3. Flip table.4. Air-Loop.
Tgt producti
Set the running output, and when the production quantity reaches the output set quantity, the
robot will automatically stop and display the prompt information.
E-stop reset
The robot presses the emergency stop, and needs to reset the robot, to make it continue to run
online.
201
10.4.2 Online Settings
202
setting is not met, the manipulator will report " stamping template online communication alarm.
Please check the alarm with the front station.
10.4.2.2 Punch online settings
TDC
Show the state of the punch bed dead point.
Punch duration
Show the length of the punch punch.
Punch at cur stn
If no punch (gear / oil pressure / pneumatic) is selected in Intermediate Station Type, the
manipulator will send an alarm message ("Intermediate station type is selected wrong to
stamping").
Punch timeout
Robot stamping signal, the punch, the die will disappear accordingly, when stamping is completed,
the dead sensor will light up again, produce a rise along the signal, the overtime time is calculated
from the stamping signal, to the dead sensor again light up the time, if beyond this time, said the
punch in the execution of stamping fault, the manipulator will alarm and to stop the punch signal.
Reaction timeout
The timeout is the calculation of the time when the stamping signal disappears to the upper dead
point. If the time exceeds this time, it means that the punch does not act after receiving the
stamping signal, and the manipulator will alarm and send out the emergency stop punch signal.
Ahead reset time
For the oil press, the stamping signal needs to continue until the dead point is induced again, and
some oil presses need to be reset in advance, so this signal can be used to control the duration of
the stamping. When this value is set to 0, it means that the stamping signal is not reset in advance,
and when the value is set to a number greater than 0, it indicates that the stamping signal is reset
after the set time of advance reset time.
Mid stn type
You can set the intermediate station types, and there are four types.1. Discharge table.2. Gear,
pneumatic and oil press.3. Flip table.4. Air-Loop. Currently only the second type is valid.
Shortest punch time
Set the shortest stamping time. If the completion time of the punch stamping signal is shorter than
this setting, it means that the dead point on the stamping is triggered by mistake, and the robot
continues to wait for the dead point on the stamping.
10.4.2.3 Feeding mach online settings
Type of feeding signal
There are 3 types of feeding machine signals, including no detection, rising edge and constant
communication signal.
Rising edge: after giving the feeding signal, the manipulator only takes the material once, and it
must disconnect the feeding signal and then give it, and the manipulator can continue to take the
material.
Chang Communication signal: as long as there is a feeding signal, the manipulator will come over to
take the material
203
10.4.3 Operation
Pic10.4.3 Operation
10.4.3.1 Variable cylinder settings
Trig cond
The variable cylinder setting mainly needs to open a fixed IO port when the trigger conditions are
met.
Trigger delay
How long after the variable cylinder meets the trigger condition.
Reset type
Set up the reset mode of the variable cylinder signal.
test
IO for manual placement or reset of the variable cylinder.
10.4.3.2 Fixture settings
Fixture
You can select two sets of clips, where the first set of clips is enabled by default, and the user can
only select whether the second set of clips is enabled. Users can select the corresponding fixture
type according to the actual situation of the site. When selecting the "electromagnet" type fixture,
they usually need to conduct demagnetization operation: at this time, they can set "1 # auxiliary
selection" as "output", and then set "1 # axis auxiliary dot duration" for 0.5 seconds. The feedback
204
detection time is the longest time to detect whether the feedback signal of the fixture is qualified
after the fixture is opened.
Record the throwing point
When the feedback of the detection clamp is unqualified, it is necessary to exit the punch, and then
move to the throwing point, and the alarm.
Dwell time
Set the stop time from the robot movement to the throwing point.
Locate
First, the positioning button, button color programming green, and then press the teaching device
enabling button, hit the key to the teaching mode, press the SA button of the teaching device, the
robot will move to the position of the saved throwing point.
10.4.3.3 Loadina pt cyclic shift
205
Start pt cla
Record the start point of the cycle offset of the pickup point.
Cur shift layer no:
Displays the number of offset layers for the current record.
Locate
First, the positioning button, button color programming green, and then press the teaching device
enabling button, hit the key to the teaching mode, press the SA button of the teaching device, the
robot will move to the location of the saving point.
Pic10.4.5 procedure
When using the feeding point cycle offset, be sure to set the E of I=2 to 1 and set the feeding point
cycle offset to enable, otherwise the program will not perform the feeding point offset and directly
move to the target location recorded by the change instruction.
10.4.3.4 Unloading pt cyclic shift
Each shfit distance
It represents the offset distance of the robot each time when the cycle offset is enabled. Note that
the offset is in the negative direction of the robot.
Total shift times
Sets the total number of cycle offsets
Enable
Enable feed point cycle offset
206
Start pt cla
Record the start point of the cycle offset of the pickup point.
Cur shift layer no
Displays the number of offset layers for the current record.
Locate
First, the positioning button, button color programming green, and then press the teaching device
enabling button, hit the key to the teaching mode, press the SA button of the teaching device, the
robot will move to the saved feeding point position.
Continuou:
This function is designed to deal with the stack after stack. If you do not tick, it will not enable
continuity, and when the offset is complete, it will stop running and a prompt is displayed. If the tick,
that is, enable continuous, as long as there is a continuous offset allowable signal, the manipulator
will always put the material, and after the top one will start from the first place.
Allow continuous shift
Display the current continuous offset signal.
For the feeding point cycle offset, always set the instruction E of I=6 to 1 and set the feeding point
cycle offset to enable, otherwise the program will not perform the feeding point offset and will
directly move to the target location recorded by the change instruction.
start using
The robot enables the continuous offset function when feeding.
207
10.4.4 Teach template
208
10.4.4.3 Template
Pic10.4.7 template
Record cur pt
Save the current point in the stamping profile.
Delete all pts
Delete all the saved trace points.
Gen file
Generate the stamping template file.
209
10.4.5 Reset
Pic10.4.7 Reset
When the robot is started or shut down, it needs to be reset again, and the reset needs to be
selected according to the actual situation.
No workpiece: if there is no workpiece in the punch connected to this robot, choose the punch
without material, and click OK to start the robot.
Has wp to punch: If there is a workpiece in the punch connected with the robot, but the workpiece
is not stamping, select the material and click OK to start the robot.
Has punched wp: if there is a workpiece in the punch connected with the robot and the workpiece
has been stamped, select the material has been flushed, and click OK to start the robot.
210
Pic10.4.7 Material interference zone
The serial number 01 for interference is selected, the interference area switch is opened, and the
detection mode is used to select the feedback position. In the two IO boards, when the area output
IO is set to 28 and 3 IO, the area output IO is set to 15, and the vertex cube interference zone is set
the range of the right angle coordinate system of the robot in the feeding area.
Then save, the output IO is inside the interference zone, and the output IO is on when the robot is
outside the interference zone.
Filling interference zone
In the standard template of stamping, it is generally necessary to be placed inside the punch or in
other areas, then set a safe area, can tell other machines to enter this area, and other machines do
not enter the area temporarily, to prevent collision.
The setting interface of the charging interference zone is as follows:
211
Pic10.4.8 Filling interference zone
The serial number 02 for interference is selected, the interference zone switch is opened, and the
detection mode is selected. In two IO boards, when the area output IO is set to 21 and 3 IO, the
area output IO is set to 29, and the vertex cube interference zone is set to set the range of the
right-angle coordinate system of the robot in the feeding area.
Then save, the output IO is inside the interference zone, and the output IO is on when the robot is
outside the interference zone.
212
11 Turin robot welding industry basic configuration
213
214
215
11.2 The Turin robot expands the external axis mode
The external axis is the robot function or robot workspace in addition to the robot body. The Turin
external axis is mainly divided into: rotation axis and walking axis control. At present, up to three
external axes can be extended on the original 6-axis system. That is, the seventh, eighth and ninth
axes are respectively.
Take the example of adding an external axis alone, namely, adding the seventh axis alone. One
seventh axis communication network cable, one seventh axle lock relay, one seventh axis driver, a
seventh axis motor, a connection cable between the seventh axis drive and a corresponding Eni file
(if the special PP \ PV mode of the external shaft, corresponding modifications should be made in
the Eni file). See the external axis section above for details.
216
11.3 welding overview
Welding function package is mainly divided into: arc induction, welding, arc receiving, welding
process abnormal treatment and other welding processes and
Pent arc, search, arc tracking, shimachine, coordination and other process control.
Welding process in addition to the arc, welding, arc and other basic welding process. There is the
arc, scratch the arc, and start. Abnormal handling process such as adhesive wire detection and
release. Let's start off with a quick description.
Pic11.3.1 General
Welding sim
When the welding test is ON, the welding machine does not arc and the robot runs running track.
When the welding test run is OFF, when the robot runs again, the robot starts to weld.
Collision det
217
When using the anti-collision welding torch, the X1 anti-collision line should be set to ON. If the
welding torch strikes during manual instruction, the anti-collision sensor moves, and the system will
display the collision alarm. The anti-collision detection can be set to OFF to remove the alarm, and
the robot can be operated. After the welding torch leaves the collision point, it should be reset to
ON, and the anti-collision detection function is effective. Click Save after each change. The system
default setting button definition F4 is also the anti-collision alarm.
Arc start in teaching mode
When the arc is OFF in instruction mode, the robot will not; when the arc is ON in instruction mode,
when the robot is running manually to the arc command, the robot leads the arc and automatically
follows the path at the current speed until the arc is closed.
Welding machine ty
Analog welding machine refers to the welding machine and the robot control cabinet are controlled
by IO signal. Magmet digital refers to the Magmet welding machine and robot control cabinet
through CANOPEN digital communication. Otai digital refers to the Otai welding machine and the
robot control cabinet is through the CANOPEN digital communication.
Working mode of digital
When selecting the unification, the welding machine should be selected to the unity, and the
system will match the welding voltage according to the given current and the modified value of the
current filling. When selecting the separate mode, the given welding current and voltage need to be
set separately.
218
11.3.1.2 Arc start
The arc induction parameter is the process parameter of the welding machine from the arc
induction to, which also includes the current and voltage parameters in the welding process.
219
Pic11.3.2 Arc start-2
Param No.
Arc condition number (1 to 10).
Note: It can be annotated in both Chinese and English.
Flying arc start time
The robot tries to lead the arc just before reaching the welding point.
Gas preflow time
It is the protective gas time of tracheal inflation and pre-delivery to the workpiece. In the actual
processing, the front gas time in the arc induction rhythm and only the protective gas time
delivered to the workpiece will occupy the arc induction processing beat time.
Arc loss detect
Continuous time when the system detects the broken arc loss (successful arc introduction signal
loss).
Arc start duration
After sending the arc signal, wait for the delay time of the successful arc signal.
Arc start V
Is the voltage from the arc signal to the arc confirmation time.
Arc start C
It is the current from the arc induction signal to the arc induction confirmation time.
Motion arc start tim
The duration of the robot motion after obtaining the arc induction signal.
Static arc start time
The time that the robot remains stationary after obtaining the arc induction signal.
220
Running rise up
The robot gets the rise time from the arc induction voltage current to the welding voltage current
when the successful arc induction signal starts in motion.
Delayed feeding
How long after the robot arc induction delay to send wire, this function is mostly used for argon arc
welding.
Voltage
Voltage value given during the welding process.
Current
Given current value during welding.
Welding speed
The speed of the robot during the welding.
Sim speed
The speed of the robot's empty trajectory.
Re-Arcstart
Turn on or off the arc lead function.
Scratch start
Turn the scratch lead function on or off
Restart
Turn the reboot function on or off.
11.3.1.3 Restart
When the welding is interrupted due to the broken arc during the welding process. Need for
automatic robot processing or human-robot cooperation processing to solve the abnormal state.
We call the processing process a reboot.
221
Pic11.3.3 Restart
Param No.
Restart condition serial number (1 to 10).
Notes
This condition serial number can be annotated in both Chinese and English.
Restart mode
Only one case of the broken arc is considered. No longer start and to the arc point after the alarm
need not elaborate. The manual restarts almost follows the automatic reboot process. The
difference is that a manual startup requires the user to press the start button. Before the manual
start, the system allows the user to remove the torch instruction. At the manual start, the system
will automatically move back to the arc point and then start the process.
Restart times
Maximum number of rerepeats for abnormal arc break on the same weld.
Overlap dist
When restarting, the lap length of the overlapping welding.
Retreat speed
The speed on return during reinitiation.
Move to Start V
Return the welding voltage output value during restart.
Move to start C
222
Return ding current output value during restartup.
Re-Arcstart
Turn on or off the arc lead function.
Scratch start
Turn the scratch lead function on or off.
11.3.1.4 Arc end
At the end of the welding movement, the arc closing point is adjusted, which is generally used for
the high quality requirements of the welding joint, and will also affect the next arc induction.
Usually, the arc closing current and voltage will be smaller than the welding value.
223
arc point.(With only one set of the motion drop time and arc closing time)
Arc end time
The time that the robot lasts with the arc closing voltage and current after moving to the arc closing
point.(There can be only one set the movement drop time and stationary decline time)
Arc end V
The given voltage value during the arc closing after the welding movement.
Arc end C
The given current value after the welding movement.
Fire back time
Duration of burn back after the arc closing time.
Fire back V
Back back point voltage value.
Fire back C
Reback the given current value.
Wire back time
It is the time of welding wire withdrawal after arc extinguishing.
Gas postflow time
It is the time to protect the gas from the arc receiving point after arc extinguishing.
Wire stick det
Whether to detect the sticky wire.
11.3.1.5 Re-arcstart
Re arc induction is the first remedial measure after the failure of arc induction. When arc
introduction again, the arc induction point for a distance.
224
Pic11.3.5 Re-arcstart
Param No
Rearc condition number (1 to 10).
Notes
This arc condition can be annotated in both Chinese and English.
Re-arcstart times
The maximum number of repetitions after arc initiation failure.
Wire back time
Time for wire withdrawal after arc initiation failure.
Total back dist
After the arc failure, the robot retreats from the total moving distance.
Move speed
During the arc again, the robot returns to the starting point of the welding speed.
Back V
During rearc, the robot returns to the given value of the starting point of the welding.
Back C
During the arc induction, the robot returns to the current output of the starting point of the
welding.
11.3.1.6 Scratch start
The arc lead is the second remedial measure after the arc lead failure, and it is also the function of
225
continuing the arc lead action to try the arc lead welding again after the arc lead failure. When the
arc induction fails, the system will continue to use the current voltage parameter (or the scratch arc
induction parameter) for a distance, and if the arc signal is received during the movement, move
the arc introduction point.
226
Pic11.3.6 Wire stick
Param No.
Silk condition serial number (1 to 10).
Notes
The adhesive wire condition serial number can be annotated in both Chinese and English.
Wire stick det time
After the arc, check for the time.
Remove wire stick
On and off the wire detection function.
Process times
Maximum number of repeats of unwire treatment.
Process V
Given value of the welding voltage when removing the adhesive wire.
Process C
Given value of welding current for release of adhesive wire.
Process time
Duration of the given value of the welding voltage current during release.
11.3.1.8 V mapping
The voltage matching table is the analog voltage of the second set (0-10v) of the robot output and
the voltage matching table of the welding output of the welding machine, and also the second
227
analog voltage of the controller output (0-10v) matches the voltage display on the welder, so that
the output voltage value of the controller can be calculated according to the voltage during the
welding machine.
Voltage matching is divided into two modes: welding machine mode and unified mode. When the
respective modes are matched, the controller can output the corresponding voltage value by
clicking the actual voltage value displayed on the welder into the welder value of voltage 01-voltage
20 and click to save. When the unified mode is matched, the welding machine end shall be adjusted
to display the arc length correction value. Click the controller to output the corresponding voltage
value. At this time, the sum of the actual arc length correction voltage value displayed on the
welding machine plus the maximum value of the arc length correction. the voltage 01-voltage 20
can be added.
Pic11.3.7 V mapping
order number
The 20-gear voltage output serial number (01 to 20).
Output
Voltage value of (0-10v) output by the robot control cabinet.(Default second group)
Oper
Click effective, the robot will issue the corresponding output voltage value.
Machine
After the click takes effect, the welding machine voltmeter will display the welding machine voltage
value corresponding to the voltage issued by the robot.
228
11.3.1.9 A mapping
Current matching table is the robot output of the first group (0-10v) of the analog voltage and the
welding output current matching table, also is the controller of the first output analog voltage
(0-10v) with the current displayed on the welder, so that according to the welding current back
calculate the controller output current value.
When the current matches, you should first select the welding wire material, welding wire diameter
and gas type on the welding machine panel, and then click the controller to output the
corresponding voltage value. At this time, fill the actual current value displayed on the welding
machine into the welder value, input all the welding machine value of current 01-current 20 and
click to save it.
Pic11.3.8 A mapping
order number
20-gear current output serial number (01 to 20).
Output
Voltage value of (0-10v) output by the robot control cabinet.(Default first group)
Oper
Click effective, the robot will issue the corresponding output voltage value.
Machine
After the click takes effect, the welding machine current meter will display the welder current value
corresponding to the voltage issued by the robot.
229
11.3.1.10 Weaving
The pendulum arc setting is that in the welding process, the robot can swing the welding torch and
widen the weld, which can realize the special welding process requirements and optimize the weld
forming.
Pic11.3.9 Weaving
Arc serial number
No number of pendulum arc condition (1 to 10).
Notes
The order number of the pendulum arc conditions can be annotated in Both Chinese and English.
Method
Sinine / spiral pendulum.
Freq
Set the number of swings per second.
Amp1
Set the distance from the left swing of the weld.
Amp2
Set the distance to the right swing of the weld.
Left dwell
Sets the residence time when swinging to the left vertex.
Middle dwell
230
Sets the dwell time when swinging to the middle point.
Right dwell
Set the dwell time when swinging to the right vertex.
11.3.1.11 Spot welding
Spot welding process can realize the welding function in linear motion or curve motion.
231
11.3.1.12 Touching search
The finding process is the finding detection between the robot and the welding machine with the
finding signal, which can correct the deviation of the welding trajectory caused by the workpiece
weld. In the search mode, the system supplies the nozzle or welding wire with low voltage power,
and the workpiece is grounded. When the robot moves along the search track, once the nozzle or
the wire contact with the workpiece, the contact signal will generated and the robot stops moving.
The path is corrected by using the deviation value between the current location and the
programmed location to obtain the true target location. The surface of the workpiece must be free
of rust, oxide layer, paint or other insulating coating, and must be cleaned and cut before
positioning. When using a water-cooled welding torch, distilled water or other non-conductive
coolant is recommended. Ppure water (such as saline mineral water) will reduce location sensitivity
or reduce search voltage. Please refer to the TURIN Robot Location Instructions for detailed use.
232
Search mode
One-dimensional search refers to the offset of the artifact in the direction of only one of the
coordinates X, Y and Z.
Two-dimensional search refers to the offset of the artifact in the direction of two of the coordinates
of X, Y and Z.
3 d search refers to the offset of the artifact in the three coordinate directions of X, Y and Z.
One-dimensional plus rotation means that the workpiece is offset in one of the coordinate
directions X, Y, and Z and rotates around a certain coordinate direction.
2 D plus rotation means that the workpiece is offset in the two coordinate directions of X, Y, and Z
and rotates around a certain coordinate direction.
3 d plus rotation refers to the shift of the workpiece in its three coordinate directions: X, Y and Z,
and it rotates around a certain coordinate direction.
A 2 D circle refers to the offset in the direction of the circular piece X and Y.
Three-dimensional circle refers to the offset of the circular piece X, Y and Z.
Rot dir
Select the direction of the workpiece rotates around the user coordinate system X, Y and Z
according to the search mode.
Sync mode
In the welding process, whether it is necessary to weld together with the shimachine, then the
corresponding shaft number should be selected.
User coord
The ial number of the user coordinate system selected on rotation.
Max search dist
The maximum distance when moving from the starting point to the contact point of the workpiece
is greater than this value, and the system alarm.
Search speed
The speed of moving from the search start to the artifact search contact.
Auto return
The switch that automatically returns to the starting point of the search site after contacting the
workpiece.
Max return dist
The maximum distance that is automatically returned to the starting point of the location.
Return speed
The maximum speed that automatically returns to the location starting point after contacting the
artifact.
11.3.1.13 Arc track
Arc tracking process is the robot using welding process welding gun swing, real-time of welding
current signal sampling, according to the ends of the swing welding current deviation value and
trend, analysis of the horizontal and vertical path correction data, timely transmission to the robot
system, robot real-time correction trajectory, ensure to meet the requirements of stable welding.
Please refer to the TURIN Robot Arc Tracking Instructions for detailed use.
233
Pic11.3.12 Arc track-1
234
horizontal swing arc and vertical refers to the correction of the high and low deviation.
start time
From this point (no pendulum arc is ms, pendulum arc is cycle) to eliminate the impact of arc on the
current. The parameter range is 0-10ms, and generally take the 3ms.
Sample period
The sampling period of the current starts from after the start time. The parameter range is 0-50ms,
generally 20ms.
Weave freq
Arc tracks the number of swings per second during welding.
Weave amp
The arc tracks the distance of the unilateral swing during the welding.
In filter const
Filtering the input current directly affects the transverse and longitudinal sampling reference
current. If the transverse deviation is too large or the longitudinal sampling current deviation from
the given value is too large, the input filter constant can be increased. The parameter range is
0-10ms, and generally take 5ms.
Out filter const
The output trace amplitude was filtered. The parameter range is 0-10ms, and generally take 5ms.
Current sample max bias
Each time the current is sampled, exceeding this value is adjusted to this value, with the parameter
range.
H ratio
The larger the K coefficient, the greater the adjustment amplitude. Improper setting will lead to
welding into a curve, and the parameter range is 0-5mm / A, and generally take 0.8 mm / A.
H sample window
The current change below the window is considered to be 0, do a dead area, no sampling, filter the
small current fluctuations, the parameter range is 0-1A, generally take 0.05A.
H base bias
Devases during normal welding are recorded here to compare deviations. The reference deviation is
obtained by sampling. When the corner weld is welded, the pendulum arc is more symmetrical and
the reference deviation is closer to zero ampere. Using the arc tracking sampling instruction will get
two data: transverse sampling reference deviation and longitudinal sampling reference deviation.
H single min bias
Only greater than this value will be corrected. For example, if the value is calculated 3mm, then the
compensation is 2mm. If the calculation is 0.8mm, then there is no compensation, and the
parameter range is 0-5mm, generally 1mm.
H single max bias
Any deviation greater than this value will be compensated according to the maximum deviation.
Improper setting will lead to welding into a curve, the parameter range is 0-5mm, generally 0.5 mm.
H toal max bias
The modifiable maximum deviation value, given the left and right maximum deviation, zero at the
starting point, the parameter range is 0-50mm, generally 20mm.
V factor
When both horizontal and longitudinal need compensation, the longitudinal influence factor can
235
correct the longitudinal compensation too fast, generally take 0.
V ratio
The larger the K coefficient, the greater the adjustment range, improper setting, will lead to welding
into a curve, dry elongation is too long or too short collision welding gun, the parameter range is
0-5mm / A, generally 0.8 mm / A.
V sample window
The current change below the window is considered to be 0, do a dead area, no sampling, filter the
small current fluctuations, the parameter range is 0-1A, generally take 0.05A.
V base current
The current value is recorded during normal welding, and the reference deviation is obtained by
sampling.
V max influence bias
When both transverse and longitudinal need to be compensated, the longitudinal influence factor is
corrected in a small range starting from this deviation, generally taking 0.
V single min bias
Only greater than this value will be corrected. For example, if the value is calculated 3mm, then the
compensation is 2mm. If the calculation is 0.8mm, then there is no compensation, and the
parameter range is 0-5mm, generally 1mm.
V single max bias
Any deviation greater than this value will be compensated according to the maximum deviation.
Improper setting will lead to welding into a curve, dry elongation is too long or too short bump
welding gun, parameter range 0-5mm, generally 0.5 mm.
V total bias
The modifiable maximum deviation value, given the left and right maximum deviation, zero at the
starting point, the parameter range is 0-50mm, generally 20mm.
11.3.1.14 Laser search
Laser positioning is the process of making a single measurement with a laser sensor and calculating
the position of the target point. Generally, when short welds or using laser tracking will interfere
with the fixture, the weld is corrected in the form of laser positioning.
Laser search no.
No number of laser location conditions (1 to 10).
note
Conditional serial number of the annotated arc tracking process in both Chinese and English
Search reference
When searching for the standard artifact, the first time should open the reference label and close
the label later.
Search type
Four-point square (two points in the X direction and Y direction of the workpiece) / three-point
circle (three times in the R direction in three different directions on the workpiece)
Base
For the points found when the base label is opened, the corresponding P variable is stored in order;
when the base label is closed, the corresponding P variable is stored and a P variable is selected for
offset or rotation.
236
Pic11.3.14 Laser search
237
11.3.1.15 Welding l0 def
Define the signal correspondence between the robot and the welder.
238
Search sig
After the welding machine finds the position, the successful signal to the robot, which is generally
the input signal 10.
Wire stick sig
The signal of welding wire is generally input signal 11.
239
point of the second straight line, point 4 is the end point of the second straight line, and then close
the arc, lift the welding torch to point 5.
When more than two continuously welded straight or circular arc, the lead arc at point 2 may be
used.
When a straight or circular arc is not continuous, it is necessary to close the arc, then raise the
welding torch, and then continue welding to the next arc lead point. As the middle transition path
avoids fixtures and artifacts, a few appropriate transition points can be added.
240
11.4.4 welding instruction editing
The general robot motion instructions do not perform other control instructions.
Welding motion is the addition of arc and arc or other instructions related to welding to the
ordinary motion trajectory.
Add lead arc to the corresponding position and add close arc after welding.
241
Pic11.4.4 Welding instructions-2
The welding parameters are set in the process welding process by using the appropriate serial
number.
Special welding process needs to be used with the corresponding welding instructions, such as
pendulum arc welding, continuous spot welding, back motion welding, etc.
The welding instruction process includes the welding routine instruction, swing instruction, spot
welding instruction and so on.
Welding command parameter serial number Select the corresponding welding process setting
condition serial number.
242
Pic11.4.5 Welding instructions-3
243
11.4.4.1 Linear-line welding instruction
Linear welding instruction: The diagram shows the programming diagram of a single straight line
welding instruction. When it is necessary to weld multiple continuous straight lines, the starting
point of the second straight line is the end point of the first straight line.
244
11.4.4.2 Arc welding instruction
245
Pic11.4.8 Welding instructions-6
246
11.4.4.3 Vertical arc welding instructions
247
11.4.4.4 Continuous-point welding command
In the linear weld or circular arc weld continuous welding point, the welding can be effect, the most
obvious welding effect in carbon steel.
248
Pic11.4.11 Welding instructions-9
249
Pic11.5.1 Login
2. Prepare an empty U disk to update the software compression package (without decompression)
into the U disk root directory;
English system (location location)
3. Plug the U disk into the USB interface of the system main box (the upper layer of the double-layer
USB port);
250
Pic11.5.3 SW update
Enter the display [parameter setting] - [Help] - [About Software] to see if the current system version
is: V4.1.21.s1 or newer version.
251
11.5.1.2 Show ator key introduction
Pic11.5.4 Settings/Cali
F1-F4: the shortcut button setting
252
Pic11.5.5 Custom key
SA: START (start) button, automatic (reproduce) mode starts execution; manual (teach) mode starts
single step operation.
BK: Return to the zero button, press and hold the robot joint to the zero position.
ST: STOP (Stop) button, automatic (reproduce) mode stop program execution.
FW: Clear the drive alarm button
253
11.5.2 Preparation before installation of the laser weld tracker
11.5.2.1 Item preparation
project content
Pic11.5.6 hardware
254
11.5.3.2 Sensor installation
The camera laser line is parallel to the robot tool coordinate Y direction.
255
11.5.5 Configuration of communication parameters
11.5.5.1 Sensor communication settings
IP address: 192.168.2.3
Port number: 502
Manufacturer: MODBUS
256
Pic11.5.9 Eth setting
257
Pic11.5.10 Mon/Edit
11.5.6 Calibrate
11.5.6.1Tool calibration
258
Pic11.5.12 6-point method-2
Note: If the calibration TCP error is very large (> 4mm), the robot calibration method can be used to
calibrate the TCP.
The camera laser line is parallel to the Y direction of the X.
11.5.6.2 Monitoring of the laser tracking
Before using the laser, please confirm that the robot and the laser communication are normal, and
we can control the relevant state of the laser through the robot's [monitoring / control] -> [laser
tracking] -> [monitoring] and modification]. As shown in the figure below:
259
Pic11.5.13 Mon/Edit
Laser communication protocol
Here is the laser communication protocol, different lasers generally have different communication
protocols, please choose the corresponding communication protocol and brand according to the
laser used now.
Connect status
Red circles indicate disconnection from the laser communication, and green circles indicate normal
communication with the laser. Connect: Click the robot to actively connect the laser. Disconnected:
The robot actively disconnects from the laser device.
Connection: Click the robot to actively connecting the laser.
Disconnected: The robot actively disconnects from the laser device.
Laser
Red circles indicate the laser off, and green circles indicate the laser on.
Open: The robot actively opens the laser.
Off: The robot actively turns off the laser
tracker
Red circles indicate closed laser vision, and green circles indicate open laser vision.
Tracker mode
Current laser-tracking mode.
Tracker X offset
260
Displays the value of the X offset for the current laser.
Tracker Y offset
Displays the value of the Y offset of the current laser.
Tracker Z offset
Shplays the value of the Z offset of the current laser.
Tracking signal delay
The time difference between the current position and the received position of the laser, in unit:
milliseconds.
Save
After the parameter are set, point save is required to take effect.
11.5.6.3 Laser calibration
The laser tracker needs to be calibrated with the robot before performing the laser tracking. Open
the laser tracker calibration interface [coordinate system] -> [laser tracking] -> [Settings and
calibration] The calibration interface is shown in the figure below:
Pic11.5.14 Settings/Cali
Horizontal track
When the open representation program is running, start the lateral tracking.
Vertical track
When the representation program is running, start longitudinal tracking.
261
Point information
A total of 15 points, the first point robot welding torch point to the welding point. From the second
point to the eighth point, keep the attitude of the robot unchanged, moving only the XYZ of the
robot. The first point is to align the laser line with the weld point. The image from the second to the
eighth point (the intersection of the laser line and the green line) is displayed on the upper
computer as the fourth quadrant, the third quadrant, the second quadrant, the first quadrant, the
second quadrant, the right half of the fourth quadrant, and the image is located in the center just
above the reference line. From point 9 to point 15, change the attitude of the robot arbitrarily. All
the axis of the robot is to align the laser line to the weld point. Point record and save the robot
point point information.
record
Record the current robot point to the point information. Select the point to be recorded first, and
then record the point point first.
calculate
After all the points are recorded, they can be calculated
Laser tracking serial number
We can save a total of 10 different sets of laser data, you can choose different laser serial numbers.
Seam point
After the laser calibration, it is necessary to verify whether the calibration is accurate.
scan point
After the laser calibration, it is necessary to verify whether the calibration is accurate. The point was
recorded by scanning the laser to the weld point.
calibrate
The location of the scanning point is calculated through the saved laser tracking calculation results
to obtain the point position verification coordinates. It is necessary to compare the difference
between the point position verification coordinates and the weld point position recording
coordinates. The coordinates of the first 3 (X, Y, Z) need to be compared, and the difference within
0.5mm is a better calibration result.
Save
Save the settings of the current interface, after the calibration calculation, must save.
262
Pic11.5.15 Laser interface
Note: 15 points, first point calculation, then point save, and then point verification! Check whether
the laser communicates during the camera calibration.
The recorded points are within the range of the sensor field of view, and the larger the distribution
range, the more accurate;
11.5.6.4 Laser verification
After the calibration ends, you need to verify that the calibration result is correct. First move the
robot to the weld spot, and then click the weld spot to record the current robot tool coordinates to
the weld spot record. Then align the laser line at the weld point, wait for the laser data to be correct,
and then click the scanning point, and the robot tool coordinates will be saved at the scanning point
to record. Finally, click calculation, the robot point verification will update the calculated
coordinates. Point point verification is the coordinates we calculated based on the previous
calibration results. It is necessary to record the coordinates of point verification and weld point, and
conduct difference verification. Comparing the XYZ of point record and verification. If it is within
0.5mm, it is the normal calibration result.
263
Pic11.5.15 Check points
Pic11.5.16 Welding
Laser tracking begins and the tracking track is followed.
Parameter 1: Laser tracking number, call the corresponding laser calibration number.
Parameter 2: lateral compensation coefficient, lateral compensation coefficient during tracking. The
larger the compensation coefficient, the larger the robot tracking range of robot, but the greater the
robot jitter will follow.
Parameter 3: longitudinal compensation coefficient, which coefficient during tracking. The larger
the compensation coefficient, the larger the robot tracking range of robot, but the greater the robot
jitter will follow.
264
Parameter 4: lateral offset, tracking quantitative lateral offset.
Parameter 5:longitudinal offset, longitudinal offset of reinforcement quantification during tracking.
Pic11.5.17 WasltFullStart
11.5.7.2 Laser tracker parameter settings
265
Parameter 1: choose laser, laser vision, laser, laser vision and call laser parameters.
Parameter 2: Turn on and off the related status, or set the call parameter value.
Pic11.5.19 WaltParaeterSet
Pic11.5.19 WaltEnd
266
11.5.7.3 Real-time tracking program
267
11.5.7.4 Single point search bit change posture
268
11.5.7.5 Two points to change posture
269
11.5.7.6 Four points to find a position to change posture
270
11.5.7.7 Commonly used instructions
Add instructions- -> coordinate point -> coordinate point plus offset
271
11.5.7.8 Common operation of laser location finding
For example: laser search point combination, determine the deviation direction can be through the
above instructions to teach the site.
272