UFactory 850 User manual

1

2
Table
Table.....................................................................................................................2
Preface......................................................................................................................... 5
Product Information......................................................................................... 5
Main Contents of the Manual.........................................................................6
Terms and Definitions ......................................................................................7
850 Motion Parameters................................................................................. 11
Unit Definition.................................................................................................. 12
Additional Information .................................................................................. 13
Safety Precautions .......................................................................................... 13
850 User Manual-Hardware Section.................................................................. 21
1. Hardware Installation Manual ........................................................................ 21
1.1. The Hardware Composition of 850.....................................................21
1.2. Robot Installation....................................................................................25
1.3. Power Supply for the Robotic Arm..................................................... 34
2. Electrical Interface ..............................................................................................37
2.1. AC Control Box......................................................................................... 37
2.2. Electrical Alarms and Cautions............................................................40
2.3. End-Effector I/O .......................................................................................41
2.4. Control Box Electrical IO........................................................................ 47
2.5. Communication Interface ..................................................................... 59

3
2.6. Ethernet TCP/IP........................................................................................59
3. End-Effector ......................................................................................................... 61
3.1. Gripper....................................................................................................... 61
3.2. Vacuum Gripper.......................................................................................65
850 User Manual-Software Section....................................................................68
1. UFactory studio................................................................................................... 68
1.1 Hardware Preparation............................................................................ 69
1.2 Connect to the Robotic Arm...................................................................70
1.3 UFactory studio Introduction.................................................................77
1.4 Robotic Arm Setting.................................................................................79
1.5 Live Control .............................................................................................. 118
1.6 Blockly Graphical Programming........................................................ 134
1.7 Python IDE............................................................................................... 162
2. 850 Motion Analysis......................................................................................... 164
2.1. Motion of the Robotic Arm ..................................................................165
2.1.1. Joint Motion......................................................................................... 165
2.3. Singularity...............................................................................................181
3. Typical Examples.............................................................................................. 184
3.1. The Use of 850 Vacuum Gripper........................................................185
3.2. The Use of 850 Gripper ........................................................................ 187
3.3. The Use of the Digital IO......................................................................188
4. Robotic Arm Motion Mode and State Analysis ..........................................189

4
Appendix................................................................................................................. 198
Appendix1-Error Reporting and Handling..................................................... 198
1.1 Joints Error Message and Error Handling.........................................198
1.2 Control Box Error Code and Error Handling.................................. 201
1.3 Gripper Error Code & Error Handling...............................................205
1.4 Python SDK Error Code & Error Handling ......................................... 207
Appendix2-Technical Specifications ................................................................209
1.1 850 Common Specifications............................................................... 209
1.2 850 Specifications................................................................................. 211
Appendix3-FAQ..................................................................................................... 212
Appendix4-The 850 Software/Firmware Update Method......................... 213
1.Online upgrade: when PC has network connection .........................214
2.Offline upgrade: when PC has no network connection.................. 215
Appendix5- Maintenance and Inspection...................................................... 215
Appendix6- Repair................................................................................................217
Appendix7-Product Information.......................................................................218
1.1 Product Mark........................................................................................... 218
1.2 EMC.............................................................................................................219
1.3 Use Environment.................................................................................... 220
1.4 Transport, Storage and Handling ...................................................... 221
1.5 Power box placement height..............................................................221
1.6 Power Connection .................................................................................. 221

5
1.7 Special Consumables............................................................................222
1.8 Stop Categories.......................................................................................222
1.9 Stopping Time and Stopping Distance ............................................. 222
1.10 Maximum Speed.................................................................................. 223
1.11 Specifications ........................................................................................223
Appendix8-DH Parameters of 850 Series ....................................................... 224
Preface
Product Information
Package contains:
1. Robotic Arm x 1
2. Control Box x 1
3. Robotic Arm power and signal cable x 1
4. Power cable for the control box x 1

7
(2) Electrical interface
(3) 850 end-effector
850 User Manual Software Section
(1) UFactory studio instructions
(2) 850 motion analysis
(3) Typical examples
Appendix
(1) 850 error reporting and handling
(2) 850 technical specifications
(3) FAQ
(4) The 850 software/firmware update method
(5) Maintenance and Inspection
(6) After-sales service
Terms and Definitions
The following terms and definitions apply to this manual.
Control Box
The control box, core part of the robotic arm, is the integration of
the robotic arm control system.
End Effector
The end effector, installed on the front end of the wrist of the
robotic arm, is used to install special tools (such as grippers,
vacuum gripper, etc.), which can directly perform work tasks.
Enable Robotic Arm
Power on the robotic arm and turn on the motor of the robotic arm.
After the robotic arm is enabled, it can start to move normally.
TCP
Tool center point.

8
TCP Motion
TCP motion is the Cartesian space motion, with target position in
Cartesian space coordinate and the end follows the specified
trajectory (arc, line, etc.).
TCP Payload
(End Payload)
The payload weight refers to the actual (end tool +other object)
weight in Kg; the X / Y / Z-axis indicates the position of the center
of mass of the TCP relative to the default tool coordinate system,
with unit of mm.
TCP Offset
(Tool Center Point
Offset)
Set the relative offset between the default tool coordinate system at
flange center and the actual tool coordinate system, with distance
unit of mm.
Roll/Pitch/Yaw
Roll / Pitch / Yaw sequentially rotates around the X / Y / Z of the
selected coordinate system (base coordinate system).
The following describes the roll/pitch/yaw orientation
representation of {B} relative to {A}:
For example, the coordinate system {B} and a known reference
coordinate system {A} are first superposed. First rotate {B} around
A
X
ˆ
by γ, then around
A
Y
ˆ
by β, and finally around
A
Z
ˆ
by α.
Each rotation is around a fixed axis of the reference coordinate
system {A}. This method is called the XYZ fixed angle coordinate
system, and sometimes they are defined as the roll angle, pitch
angle, and yaw angle.
The above description is shown in the following figure:
The equivalent rotation matrix is:
XYZXYZ
A
BRRRR ,,
Note: γ corresponds to roll; β corresponds to pitch; α corresponds
to yaw.

9
·
Axis-Angle
Rx / Ry / Rz representation also, using 3 values to represent the
pose (but not three rotation angles), which is the product of a three-
dimensional rotation vector [x, y, z] and a rotation angle [phi
(scalar)].
The characteristics of the axis angle:
Assume the rotation axis is [x, y, z], and the rotation angle is phi.
Then the representation of the axial angle:
[Rx, Ry, Rz] = [x * phi, y * phi, z * phi]
Note:
1. [x, y, z] is a unit vector, and phi is a non-negative value.
2. The vector length (modulus) of [Rx, Ry, Rz] can be used to
estimate the rotation angle, and the vector direction is the rotation
direction.
3. If you want to express reverse rotation, invert the rotation axis
vector [x, y, z], and the value of phi remains unchanged.
4. Using phi and [x, y, z] can also derive the attitude representation
as unit quaternion q = [cos (phi / 2), sin (phi / 2) * x, sin (phi / 2) * y,
sin (phi / 2) * z].
For example:
The vector of the rotation axis represented by the base coordinate
system is [1, 0, 0], and the rotation angle is 180 degrees (π), then
the axis angle representation of this pose is [π, 0, 0].
The rotation axis is [0.707, 0.707, 0] and the rotation angle is 90
degrees (π / 2), then the axis angle posture is [0.707 * (π / 2), 0.707
* (π / 2), 0].
The Base Coordinate
System
(Please refer to the
figure 1)
The base coordinate system is a Cartesian coordinate system based
on the mounting base of the robotic arm and used to describe the
motion of the robotic arm.
(Front and back: X axis, left and right: Y axis, up and down: Z axis)
Tool Coordinate System
(Please refer to the
figure 1)
Consists of tool center point and coordinate orientation. If the TCP
offset is not set, the default tool coordinate system is located at
flange center.
For tool coordinate System based motion: The tool center point is

10
taken as the zero point, and the trajectory of the robotic arm refers
to the tool coordinate system.
User Coordinate
System
(Please refer to the
figure 1)
The user coordinate system can be defined as any other reference
coordinate system rather than the robot base.
Manual Mode
In this mode, the robotic arm will enter the ‘zero gravity’ mode,
since the gravity is compensated, the user can guide the robotic
arm position directly by hand.
Teach Sensitivity
Teach sensitivity range is from 1 to 5 level. The larger the set value,
the higher the teach sensitivity level, and the less the force required
to drag the joint in the manual mode.
Collision Sensitivity
The collision sensitivity range is from 0 to 5 level. When it is set to 0,
it means that collision detection is not enabled. The larger the set
value, the higher the collision sensitivity level, and the smaller the
force required to trigger the collision protection response of the
robotic arm.
GPIO
General-purpose input and output.
For the input, you can check the potential of the pin by reading a
register;
For the output, you can write a certain register to make this pin
output high or low potential;
Safety Boundary
When this mode is activated, the boundary range of the cartesian
space of the robotic arm can be limited. If the tool center point (TCP)
exceeds the set safety boundary, the robotic arm will stop moving.
Reduced Mode
When this mode is activated, the maximum linear velocity of the
Cartesian motion of the robotic arm, the maximum joint speed, and
the range of the joint motion will be limited.

11
Figure 1
850 Motion Parameters
The parameters of the robotic arm are shown in Table 1.1 and Table 1.2.
Table 1.1 Working range of each joint of the robotic arm
Table 1.2 Range of various motion parameters of the robotic arm
Robotic Arm
850
Maximum
180°/s
Working
Range
Joint 1
±360°
Joint 2
-118°~120°
Joint 3
-225°~11°
Joint 4
±360°
Joint 5
-97°~180°
Joint 6
±360°
TCP Motion
Joint Motion

12
Note:
1. In the TCP motion (Cartesian space motion) commands (set_position () function
of the SDK), If a motion command involves both position transformation and
attitude transformation, the attitude rotation speed is generally calculated
automatically by the system. In this situation, the specified speed parameter is the
maximum linear speed, range from: 0 ~ 1000mm / s.
2. When the expected TCP motion only changes the attitude (roll, pitch, yaw), with
position (x, y, z) remains unchanged, the specified speed is the attitude rotation
speed, so the range 0 to 1000 corresponds to 0 to 180 ° / s.
Unit Definition
The Python / Blockly examples and the units standard in the
communication protocol are shown in Table 1.3.
Table 1.3. Default units in Python / Blockly example and Communication
Protocol
Parameter
Python-SDK
Blockly
Communication
X(Y/Z)
millimeter(mm)
millimeter(mm)
millimeter(mm)
Roll(Pitch/Yaw)
degree(°)
degree(°)
radian(rad)
J1(J2/J3/J4/J5/J6/J7)
degree(°)
degree(°)
radian(rad)
TCP Speed
mm/s
mm/s
mm/s
TCP Acceleration
mm/s²
mm/s²
mm/s²
TCP Jerk
mm/s³
mm/s³
mm/s³
Joint Speed
°/s
°/s
rad/s
Joint Acceleration
°/s²
°/s²
rad/s²
Speed
0~1000mm /s
0~180°/s
Acceleration
0~50000mm /s2
0~1145°/s2
Jerk
0~100000mm /s3
0~28647°/s3

13
Joint Jerk
°/s³
°/s³
rad/s³
Additional Information
For UFactory studio software download and 850 developer manual,
please refer to the UFACTORY official website.
(https://www.ufactory.cc/download/)
Safety Precautions
●Introduction
This chapter contains essential safety information, integrators and users
of 850 must follow the instructions and pay special attention to the
content with warning signs. Due to the complexity of the robotic arm
system and its degree of danger, please ensure you fully understand the
content of this manual and strictly adhere to the instructions. When
using SDK (Python/ROS/C++) and graphical interface (UFactory studio),
please read the relevant interface instructions demonstrated in this
operation manual.
UFACTORY devotes to providing reliable and safety information, but
these contents do not constitute warranties by UFACTORY. UFACTORY
will not have or accept any liability, obligation, or responsibility

14
whatsoever for any loss, destruction, or damage arising from or in
respect of any use or misuse of 850.
●Validity and Responsibility
The information does not cover how to design, install, and operate a
complete robotic arm application, nor does it cover all peripheral
equipment that can influence the safety of the complete system. The
complete system must be designed and installed under the safety
requirements outlined in the standards and regulations of the country
where the robotic arm installed.
The integrators of the 850 are responsible for the compliance of
applicable safety laws and regulations in the country, to prevent any
hazards in the operating environment.
Safety precautions include but are not limited to:
●Making a risk assessment for the complete system. Make sure to
have a safe distance between people and 850 when interacting with
the 850.
●Interfacing other machines and additional safety devices if defined
by the risk assessment.
●For software programming, please read the interface
documentations carefully and set up the appropriate safety

15
functions in the software.
●Specifying instructions for use to prevent unnecessary property
damage or personal injury caused by improper operation.
●Limitations on Liability Exceptions
Any information given in this manual regarding safety must not be
construed as a warranty by UFACTORY that the 850 will not cause injury
or damage even if all safety instructions are complied with.
●Safety Alarms in this Manual
DANGER:
This indicates an imminently hazardous
electrical situation, which if not avoided, could
result in death or serious damage to the device.
WARNING:
This indicates a potentially hazardous situation
which, if not avoided, could result in death or
serious damage to the device.
HIGH TEMPERATURE
This indicates a potential hot surface, which if

16
touched, could result in personal injury.
NOTICE
If not avoided, could result in personal injury or
damage to the equipment.
CAUTION:
If not avoided, could result in personal injury or
damage to the equipment.
●Safety Precautions
Overview
This section contains some general warnings and cautions on
installation and application planning for the robotic arm. To prevent
damage to the machine and associated equipment, users need to learn
all the relevant content and fully understand the safety precautions. We
do not control or guarantee the relevance or completeness of such
information in this manual, for which users should conduct self-
assessment of their specific problems.
General Alarms and Cautions

17
1. Make sure to use the correct installation settings
in this manual for the robotic arm and all the
electrical equipment.
2. Please follow the instructions in this manual,
installation, and commissioning needs to be
performed by professionals in accordance with
the installation standards.
3. Make sure the robotic arm and tool are properly
and securely bolted in place.
4. The integrity of the device and system must be
checked before each use (e. g. the operational
safety and the possible damage of the robotic
arm and other device systems).
5. Preliminary testing and inspection for both
robotic arm and peripheral protection system
before production is essential.
6. The operator must be trained to guarantee a
correct operation procedure when using
SDK(Python/ROS/C++) and graphical interface
UFactory studio.
7. A complete safety assessment must be recorded
each time the robotic arm is re-installed and
debugged.
8. When the robotic arm is in an accident or
abnormal operation, the emergency stop switch
needs to be pressed down to stop the
movement, and the posture of the robotic arm

18
will slightly brake and fall.
9. The 850 joint module has brakes inside, which
will remain manipulator’s pose when a power
outage occurs.
10. When the robotic arm is in operation, make sure
no people or other equipment are in the working
area.
11. When releasing the brakes of 850, please take
protective measures to prevent the robotic arm
or operator from damage or injury.
12. When connecting the 850 with other machinery,
it may increase risk and result in dangerous
consequences. Make sure a consistent and
complete safety assessment is conducted for the
installation system.
1. The robotic arm and Control Box will generate
heat during operation. Do not handle or touch
the robotic arm and Control Box while in
operation or immediately after the operation.
2. Never stick fingers to the connector of the end-
effector.
1. Make sure the robotic arm’s joints and tools are
installed properly and safely, and check the
status for all circuits.
2. Make sure that there is enough space for the
manipulator to move freely.

19
3. Make sure that there is no obstacle in the robotic
arm’s working space.
4. The Control Box must be placed outside the
working range of the robotic arm to ensure the
emergency stop button can be pressed once an
emergency occurs.
5. If the robotic arm is in operation and needs an
emergency stop, make sure the restart/reset
motions will not collide with any obstacle.
6. Do not modify the robotic arm (or Control Box).
Any modification may lead to unpredictable
danger to the integrators. The authorized
restructuring needs to be in accordance with the
latest version of all relevant service manuals. If
the robotic arm is modified or altered in any
way, UFACTORY (Shenzhen) Technology Co., Ltd.
disclaims all liability.
7. Users need to check the collision protection and
water-proof measures before any
transportation.
When the 850 cooperates with other machinery, a
comprehensive safety assessment of the entire
collaboration system should be performed. It is
recommended that any equipment that may cause
mechanical damage to 850 be placed outside the
working range during application planning.

20
Operator Safety
In the operation of the robotic arm system, we must ensure the safety of
the operators first, with the general precautions listed in the table below.
Please take appropriate measures to ensure the safety of operators.
1. Each operator who uses the robotic arm system
should read the product user manual carefully.
Users should fully understand the standardized
operating procedures with the robotic arm, and
the solution to the robotic arm running error.
2. When the device is running, even if the robotic arm
seems to stop, the robotic arm may be waiting for
the signal and in the upcoming action status. Even
in such a state, it should be considered as the
robotic arm is in action.
3. A line should be drawn to mark the range of
motion of the robotic arm to let the operator
acknowledge the robotic arm, including its end
tools (such as gripper and suction cup, etc)
operating range.
4. Check the robotic arm regularly to prevent
loosening of the bolts that may cause undesirable
consequences.
5. Be careful when the robotic arm is running too
fast.
6. Be careful about dropping items that can be
Table of contents
Other UFactory Robotics manuals

UFactory
UFactory uArm Swift Pro Instruction Manual

UFactory
UFactory LITE 6 User manual

UFactory
UFactory LITE 6 User manual

UFactory
UFactory xArm 5 User manual

UFactory
UFactory uArm Controller User manual

UFactory
UFactory uArm Swift Pro Instruction Manual

UFactory
UFactory xARM VACUJM GRIPPER User manual

UFactory
UFactory uArm Swift Pro Operator's manual

UFactory
UFactory uArm Swift Operator's manual

UFactory
UFactory xArm User manual