§4 xArm 850

How the machine works

How the controller turns commands into joint motion, how the arm knows where its tool is, and how it senses a bump.

Start here

This section explains how the controller turns a command into joint motion, how the arm knows where its tool is, and how it senses a bump. Every tier below starts from the same three facts.

  • 17-bit

    encoders on the joint motors1

  • 0–5

    collision sensitivity, where 0 is off2

  • 250 Hz

    fastest command rate in servo mode3

  • Six rotary joints move the arm, from Joint 1 at the base to Joint 6 at the tool4.
  • The control box is the core of the system: it holds the arm's control system5.
  • What the arm positions is a point on its tool, called the Tool Center Point, or TCP6.

S2 in one line: S2 is the xArm 850 arm that picks up incoming material and moves it between receiving, staging and production78.

Look back

A question from earlier on, to keep it fresh. Skip it if you like; nothing depends on it.

q-s03-b-02 Which part actually touches and holds the workpiece?
  1. Check option (a)

    Correct. Yes. It mounts on the wrist and does the work.20

  2. Check option (b)

    Not this one. The control box houses the control system. It sits away from the arm and never touches the part.59

  3. Check option (c)

    Not this one. Joint 1 is at the base. The tool attaches at the other end, at Joint 6.4

q-s03-b-01Safety Where is the 850's emergency stop button?
  1. Check option (a)

    Correct. Right. That is why the control box must sit where you can reach it, outside the arm's working range.6061

  2. Check option (b)

    Not this one. The wrist has a user button with a blue LED, and its function is left for the user to define. It is not an emergency stop. The e-stop is on the control box.6260

  3. Check option (c)

    Not this one. Studio has a STOP button, but it is a software stop that leaves the arm's power on. The emergency stop is the button on the control box.636460

Choose your depth

Four depths, one page. Switch at any time: every tier stays open to everyone. What the four tiers mean

1Beginner

The ideas behind the motion

For: Anyone with no robotics background: a visitor, a new operator, a manager
Kind of task: Recognise and recall, with plain-language explanations and pictures

In this part you learn the few ideas that explain every move the arm makes: joints that turn, a box that decides, a point on the tool that the arm aims, and a way of sensing a bump that is useful but is not a safeguard. No robotics background is needed.

Six joints, one after another

Six rotary joints sit one after another along the arm, from Joint 1 at the base to Joint 6 at the tool end. Each one turns, and together they place the tool4.

A line drawing of the 850 arm with Joint 1 to Joint 6 labelled and a curved arrow at each joint showing its direction of rotation.
Joint 1 at the base to Joint 6 at the tool, each turning about its own axis4. Image: UFACTORY

The control box decides

  • The control box is the core of the system: it holds the arm's control system5.
  • UFACTORY Studio runs inside the control box, and you open it in a web browser9.

The point the arm aims

  • The arm positions one point on its tool, the Tool Center Point, or TCP. If no offset is set, the TCP is the centre of the flange at the end of the arm. An offset moves it to the real tip of the tool6.
  • Positions are measured from the arm's base. X is front and back, Y is left and right, and Z is up and down10.

Teaching by hand

  • In manual mode the arm compensates for its own weight, which UFACTORY calls "zero gravity". A person can then move it by hand and record the positions11.
  • How easily the arm gives under your hand is a teach sensitivity setting12.

When the power is off

With the power off, brakes inside the joints hold the arm in its pose13.

Sensing a bump

  • The 850 notices a collision from motor current. The controller works out from a model of the arm how much current each joint should draw, compares that with the current it measures, and reports a collision when the two differ by more than a set threshold14.
  • That means it notices a bump from the motor current, once contact has happened14.
  • No UFACTORY document this platform found calls this detection safety-rated15. This project's advice is to treat it as a controller feature, never as a validated safeguard16.
  • So the rule stays the same: keep out of the arm's working area while it runs17.

Check yourself

Answer, then check. Each option has its own feedback, and nothing is scored.

q-s04-b-01 What is the TCP?
  1. Check option (a)

    Correct. Right. It is the Tool Center Point, the reference point the arm positions.6

  2. Check option (b)

    Not this one. The network address is the controller's IP address. Here TCP means Tool Center Point. The same three letters also name a network protocol, which Section 8 covers.18619

  3. Check option (c)

    Not this one. The base is where positions are measured from. The TCP is at the tool end.106

q-s04-b-02 In manual mode you can push the arm around by hand. Why does it not drop?
  1. Check option (a)

    Correct. Yes. Manual mode is "zero gravity" teaching.11

  2. Check option (b)

    Not this one. In manual mode the arm is powered and compensating for gravity. With the power really off, the brakes hold it instead.1113

  3. Check option (c)

    Not this one. The gripper holds workpieces. Gravity compensation holds the arm.2011

q-s04-b-03Safety The 850 detects collisions. Does that make it safe to walk into its path?
  1. Check option (a)

    Not this one. It detects a collision from motor current, after contact. UFACTORY does not call it safety-rated. Keep out while the arm runs.141517

  2. Check option (b)

    Correct. Right. This project's advice is to treat it as a configurable function, not a validated safeguard.16

2Novice

Modes and motion types

For: Someone who will work near or with the cell: operator, trainee technician
Kind of task: Explain and sequence: put steps in order, match parts to their functions

In this part you learn the two ways the arm can be told to move, what is inside a joint, and how a command travels from a program to the motors. It is for someone who will work near or with the cell.

Two ways to move

  • A joint move goes point to point in joint space: you give each joint an angle, in degrees, and the tool follows whatever path those angles produce21.
  • A TCP move, or linear move, drives the tool along a path you choose in space, such as a straight line or an arc21.
  • This project's advice: pick the TCP move when the path itself matters, for example lowering a part straight down into a slot, and the joint move when only the end point matters22.

Why six joints matter

With six joints the 850 has full six-degree-of-freedom control, so any reachable tool position and orientation can be asked for. The five-joint xArm 5 cannot do this. UFACTORY's article does not name the 850, so this is Inferred23.

What is inside a joint

  • The joints use harmonic drives and servomotors with 17-bit encoders. UFACTORY says they support 24/7 operation and ±0.02 mm repeatability; that is the maker's own claim24.
  • The joint modules also contain brakes that hold the pose when power is lost25.

From a program to the motors

This platform pieces the path together from UFACTORY's descriptions of each part, so it is Inferred26.

  1. A program or a browser sends a command over Ethernet to the control box26.
  2. The controller in the box works out the motion26.
  3. The box powers the arm at 48 V DC and sends the joints their commands over an RS-485 line26.
  4. The joints turn, and the tool moves264.

Sensing a bump from motor current

  • For each joint, a dynamic model of the arm predicts the motor current it should draw. The controller compares that with the current it actually measures, and triggers when the difference passes a preset threshold27.
  • So this collision detection works from the motor current in each joint14.
  • It is still a controller feature, not a validated safeguard16.

Manual mode has a number

Programs refer to hand teaching as mode 2. In it the arm compensates for gravity so its links can be moved by hand, and it should be switched back to mode 0 when teaching is done28.

Check yourself

Answer, then check. Each option has its own feedback, and nothing is scored.

q-s04-n-01 Which kind of move keeps the tool on a straight line?
  1. Check option (a)

    Correct. Right. A TCP move drives the tool along a Cartesian path, such as a line or an arc.21

  2. Check option (b)

    Not this one. A joint move goes point to point in joint space, from one set of joint angles to the next. The tool's path in between is not a straight line you chose.21

  3. Check option (c)

    Not this one. Manual mode is for guiding the arm by hand under gravity compensation. Straight-line paths come from a TCP move.2821

q-s04-n-02 How does the 850's built-in collision detection notice a bump?
  1. Check option (a)

    Correct. Right. When the difference passes a threshold, the controller reports a collision.1427

  2. Check option (b)

    Not this one. UFACTORY's collision detection works from motor current: it compares each joint's measured current with the current a dynamic model predicts.14

  3. Check option (c)

    Not this one. Collision detection does not rely on the encoders. It compares each joint's measured motor current with the current a dynamic model predicts.27

q-s04-n-03Safety You set collision sensitivity to 5, the highest level. Can you now work beside the running arm?

About:2

  1. Check option (a)

    Correct. Right. No UFACTORY document found calls it safety-rated, and UFACTORY says no people should be in the working area while the arm operates.1517

  2. Check option (b)

    Not this one. It reacts to a difference in motor current, so it notices contact rather than preventing it, and it is not safety-rated. Keep out while the arm runs.141617

3Intermediate

Modes, states and what they mean

For: Someone who will set up, program or maintain the arm: technician, student engineer
Kind of task: Apply: work through written scenarios that need a decision (which mode, which setting, what to do about this error), with feedback on each choice. Simulation added in M2/M4 extends this; it does not define it

In this part you learn to read the controller's modes and states, so you can tell why the arm is ignoring you, and you meet the maths that turns a tool pose into joint angles. It is for someone who will set up, program or maintain the arm.

Modes: how the arm takes commands

The controller's modes and states match the Python SDK calls set_mode() and set_state()29.

  • Mode 0, position control. The controller enters it by default after start-up30.
  • Mode 1, servo mode. It runs only the latest target received, with no buffer31.
  • Mode 2, manual mode, for teaching by hand. Switch back to mode 0 when you are done28.
  • Mode 4, joint velocity control: each joint gets a speed32.
  • Mode 5, Cartesian velocity control: the TCP gets a velocity33.
  • Velocity commands take a duration: a positive value stops the motion after that many seconds, and 0 keeps the speed until it is changed34.
  • Mode 6, joint online trajectory planning: each new command interrupts the current motion and is re-planned from where the arm is35.
  • Mode 7, Cartesian online trajectory planning, which uses only the base coordinate system36.

States: what the arm is doing now

  • State 0 is what you set to put the arm in standby and clear the error code. The reported state then changes to 2 on its own37.
  • State 1 means the robot is moving38.
  • State 2 is ready to receive and execute commands, in the Studio manual's words39. The Python SDK calls the same state "sleeping", so the sources disagree on its name40.
  • State 3 pauses a running motion; setting state 0 resumes it41.
  • State 4 stops the arm at once, and it then accepts no new commands until the state is set back to 0. The controller also goes to state 4 on its own when any error occurs42.
  • State 5 comes on its own after a critical setting changes, such as the mode, the payload, the TCP offset or the collision sensitivity. The arm accepts no commands until state 0 is set43.
  • State 6 makes the arm perform a decelerated stop at once44.

From a tool pose to joint angles

  • For a straight-line or circular move, the controller must solve inverse kinematics: it turns the tool pose you asked for into joint angles. A solution may not exist, may not be unique, or may only be approximate45.
  • UFACTORY describes the tool's orientation as roll, pitch and yaw: rotations about the fixed X, Y and Z axes of the base frame46.
  • Units depend on the interface. The Python SDK and Blockly use degrees for joint angles and for roll, pitch and yaw; the raw protocol uses radians. Positions are in millimetres in all three47.

False bumps from a wrong payload

  • Collision detection can trigger falsely if the payload mass or centre of mass is set wrongly48.
  • In pick-and-place programs, UFACTORY's support article says the payload is typically set before the pick command and reset after the place command48.
  • Changing the payload is itself a critical setting, so the arm then waits in state 5 until you set state 043.

Check yourself

Answer, then check. Each option has its own feedback, and nothing is scored.

q-s04-i-01 You changed the TCP payload and now the arm ignores your commands. Why?
  1. Check option (a)

    Correct. Right. Changing a critical setting such as the payload puts the arm in state 5, and it accepts no commands until state 0 is set.43

  2. Check option (b)

    Not this one. State 1 means the robot is in motion. A payload change puts it in state 5, which waits for state 0.3843

  3. Check option (c)

    Not this one. A wrong payload can cause false collision triggers, but that is not what happened here. Any payload change puts the arm in state 5 until state 0 is set.4843

q-s04-i-02 Which mode do you use for hand teaching, and which mode must you be in first?
  1. Check option (a)

    Correct. Right. Mode 2 can only be entered from mode 0; from any other mode, the first request switches to mode 0 and a second one enters mode 2.2849

  2. Check option (b)

    Not this one. Mode 1 is servo mode, which runs only the latest target. Hand teaching is mode 2, entered from mode 0.312849

  3. Check option (c)

    Not this one. Mode 3, Cartesian teaching, is marked invalid in the Python SDK. Hand teaching is mode 2.5028

q-s04-i-03Safety A pick-and-place program keeps raising false collisions. A colleague suggests setting collision sensitivity to 0. What do you do instead?

About:2

  1. Check option (a)

    Correct. Right. A wrongly set payload mass or centre of mass is a known cause of false triggers, and this is UFACTORY's usual pattern.48

  2. Check option (b)

    Not this one. Level 0 disables collision detection altogether. Fix the cause, which is often a wrongly set payload.248

4Expert

Kinematics and its limits

For: Someone who designs, integrates or changes the cell: integrator, engineer, the M5 team
Kind of task: Analyse and decide: weigh trade-offs, resolve contradictions, critique a configuration

In this part you work with the arm's kinematics directly, see where Cartesian control breaks down, and learn how fast the controller can be fed commands. It is for someone who designs, integrates or changes the cell.

Forward and inverse

  • Forward kinematics runs from joints to tool: given the six joint angles and the arm's geometry, there is exactly one resulting TCP pose. This rests on a vendor's general definition rather than on UFACTORY, so it is Inferred51.
  • Inverse kinematics runs the other way, from a tool pose to joint angles, and its answer may not exist, may not be unique, or may be approximate45.
  • UFACTORY publishes both modified and standard Denavit-Hartenberg (D-H) parameters, and link mass parameters, so you can model the arm's kinematics and dynamics yourself52.
  • Section 3's expert tier lists the link lengths; for example, the upper arm, a2, is 390 mm53.

Where Cartesian control breaks down

  • Near a singularity, the arm cannot carry out a planned straight-line or circular move; it stops instead. UFACTORY advises avoiding the central area near the base54.
  • In Cartesian moves, the joints can exceed their maximum speed and acceleration, because joint space and Cartesian space are related non-linearly55.
  • Error 24 means speed is over its limit56. This platform infers that a Cartesian move asking a joint for more than its maximum is one likely cause; UFACTORY does not link the two57.

Feeding servo mode

  • In servo mode the controller accepts commands at up to 250 Hz. Commands sent faster are lost3.
  • UFACTORY suggests sending smoothed, interpolated track points at a fixed rate, preferably 100 Hz or 200 Hz, and a rate within 30-250 Hz for Cartesian servo3.
  • Remember that servo mode runs only the latest target it receives, with no buffer31.

Reading mode and state from outside

  • In UFACTORY's Modbus TCP map, holding register 32 (0x20) is the robot mode and holding register 33 (0x21) is the robot state58.
  • That manual names no robot model. It is Inferred that the 850 behaves the same, until an 850 document or the controller at S2 shows it58.
  • Mode 3, Cartesian teaching, is marked invalid in the Python SDK, so do not plan on it50.

Check yourself

Answer, then check. Each option has its own feedback, and nothing is scored.

q-s04-e-01 A straight-line move that passes near the base stops dead. Why, and what do you change?
  1. Check option (a)

    Correct. Right. Near a singularity the arm cannot carry out a planned Cartesian move and stops instead.54

  2. Check option (b)

    Not this one. Stopping on a Cartesian path near the base is the documented singularity behaviour. UFACTORY advises avoiding the central area near the base.54

  3. Check option (c)

    Not this one. Commands sent too fast in servo mode are lost, which is a different problem. A dead stop on a straight line near the base points to a singularity.354

q-s04-e-02 A Cartesian move raises error 24. Explain.

About:56

  1. Check option (a)

    Correct. Right, as this platform infers it. Error 24 means speed over its limit, and in Cartesian moves a modest tool speed can still ask a joint for more than it is allowed.565557

  2. Check option (b)

    Not this one. That is error 23. Error 24 means speed is over its limit.56

  3. Check option (c)

    Not this one. Self-collision is error 22. Error 24 means speed is over its limit.56

q-s04-e-03Safety You plan a fast straight-line move that passes close to the base, near where a person might stand. Which of these hold? Choose all that apply.
  1. Check option (a)

    This one applies. Yes. UFACTORY advises keeping Cartesian moves away from the central area near the base.54

  2. Check option (b)

    This one applies. Yes. Joint and Cartesian space are related non-linearly, so joints can exceed their speed and acceleration limits.55

  3. Check option (c)

    This one does not apply. Collision detection is not a validated safeguard, and UFACTORY says no people should be in the working area while the arm operates.1617

Not settled

Open questions · 2

What the sources do not settle for this section. Nothing here is papered over with a plausible number.

  • Kind: Contradiction

    The Python SDK and the Studio manual name state 2 differently: the SDK's get_state and state documentation call it 'sleeping', while the Studio manual calls it ready to receive and execute commands.

    See reference 40
  • Kind: Gap

    Per-joint component data for the 850 (motor model and rating, harmonic-drive ratio, encoder type and whether it is single- or multi-turn absolute, and joint-module sizes for J1–J6) is not published in the product page, the manuals or the URDF fetched.

    See reference 65
Provenance

References · 65

Each number in the text points here. Every entry states its confidence class in words and keeps its evidence one click away. How to read the labels.

Key to the badges
Confidence: Verified
A manufacturer or IntelliMake document says so, or it was observed directly. It does not mean anyone measured it at S2.
Confidence: Inferred
Reasoned from Verified facts. The reasoning is printed with the record.
Confidence: Assumed
Plausible but untested. The record says how it would be checked.
Kind: Gap
Not known. No figure or answer is given in its place.
Kind: Contradiction
Sources disagree. Both sides are shown, and the site does not pick one silently.
Kind: Recommendation
Project advice drawn from the records it cites. Not a fact about the machine and not a confidence class, so the filter never hides it.
Awaiting cell access
Awaiting cell access: could be confirmed or corrected once the physical S2 cell can be observed.
This project's simulation and agent design, not the physical cell
This project's simulation and agent design, not the physical cell.
  1. Confidence: Verifiedcomp-005

    The record says

    The 850's joints use harmonic drives (strain-wave reducers) and servomotors with 17-bit encoders.

    Evidence · 1 citation

    Industrial-grade harmonic drive and servomotors with 17 bit encoder guarantee 24/7 working as well as ±0.02 mm repeatability.

    UFACTORY 850 product page · UFACTORY · Overview, 'Durable Collaborative Robots with Easy Deployment' (page names the machine 'UFACTORY 850'; spec tables say 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  2. Confidence: Verifiedcomp-041

    The record says

    The 850 has collision detection, with collision sensitivity settable from 0 (disabled) to 5.

    Evidence · 1 citation

    The collision sensitivity range is from 0 to 5 level. When it is set to 0, it means that collision detection is not enabled.

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · Terms and Definitions, 'Collision Sensitivity', p.9 (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  3. Confidence: Verifiediface-100

    The record says

    In servo mode the controller accepts commands at up to 250 Hz, and commands sent faster are lost. UFACTORY suggests issuing smoothed, interpolated track points at a fixed frequency, preferably 100 Hz or 200 Hz, and for Cartesian servo recommends a command rate within 30-250 Hz.

    Evidence · 4 citations

    In servoj mode, the maximum receiving frequency of the control box is 250 Hz

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 1

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    It is recommended that the frequency of user issuing commands be controlled within the range of 30 Hz-250 Hz.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 1, Servo Cartesian Motion

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    If the frequency of sending commands exceeds 250Hz, the redundant commands will be lost.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 1, Servo Joint Motion

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    issue a smoothed track point with interpolation at a certain frequency (preferably 100Hz or 200 Hz)

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 1, Servo Joint Motion, suggested use

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  4. Confidence: Verifiedcomp-004

    The record says

    The 850 arm consists of a base and six rotary joints, numbered Joint 1 (at the base) to Joint 6; the last joint is the tool side, where end effectors attach.

    Evidence · 2 citations

    Quote not shown (over 40 words). See the source at: 2.1.1 Hardware Composition (docs site 'UFACTORY 850 硬件手册', English version; names the machine 'UFACTORY 850').

    UFACTORY 850 Hardware Manual (online), 2. Hardware Installation · UFACTORY · 2.1.1 Hardware Composition (docs site 'UFACTORY 850 硬件手册', English version; names the machine 'UFACTORY 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    DoF
    6

    UFACTORY USA 850 product page · UFACTORY USA · Specs block

    © UFACTORY USA · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  5. Confidence: Verifiedapp-023

    The record says

    In UFACTORY's terminology the control box is the core of the robot system: it integrates the arm's control system.

    Evidence · 1 citation

    The control box, core part of the robotic arm, is the integration of the robotic arm control system.

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, 'Control Box'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  6. Confidence: Verifiedapp-025

    The record says

    The Tool Center Point (TCP) is the reference point the arm positions. Without a TCP offset, the tool coordinate system sits at the flange centre; a TCP offset moves it to the actual tool point.

    Evidence · 2 citations

    If the TCP offset is not set, the default tool coordinate system is located at flange center.

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, 'Tool Coordinate System'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Set the relative offset between the default tool coordinate system at flange center and the actual tool coordinate system, with distance unit of mm.

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, 'TCP Offset'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  7. Confidence: Verifiedint-003

    The record says

    Station S2 of the Phase 1 factory is the UFactory xArm 850 cobot.

    Evidence · 2 citations

    S2 UFactory xArm 850 Cobot

    IntelliMake Phase 1 Factory: Autonomous Production Demonstrator (infographic) · IntelliMake.org · S2 station label

    © IntelliMake.org. Used with permission; redrawn for this platform. · Cleared for use by its owner · retrieved 2026-09-21

    UFactory xArm 850 | S2

    IntelliMake Phase 1 Factory: Autonomous Production Demonstrator (infographic) · IntelliMake.org · HW2 SME topic mapping table

    © IntelliMake.org. Used with permission; redrawn for this platform. · Cleared for use by its owner · retrieved 2026-09-21

  8. Confidence: Verifiedint-004

    The record says

    S2 picks and transfers incoming material between receiving, staging and production.

    Evidence · 1 citation

    Picks and transfers incoming material between receiving, staging, and production.

    IntelliMake Phase 1 Factory: Autonomous Production Demonstrator (infographic) · IntelliMake.org · S2 station description

    © IntelliMake.org. Used with permission; redrawn for this platform. · Cleared for use by its owner · retrieved 2026-09-21

  9. Confidence: Verifiedapp-036

    The record says

    UFACTORY Studio runs inside the control box and is used from a web browser, so the arm can be operated from any computer without installing software.

    Evidence · 1 citation

    UFACTORY Studio is a web-based software running inside the control box, which means no additional installation needed before running the robot.

    UFACTORY 850 product page · UFACTORY · Tech Specs, 'Software'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  10. Confidence: Verifiedapp-026

    The record says

    The base coordinate system is a Cartesian frame fixed to the arm's mounting base: X is front and back, Y left and right, and Z up and down.

    Evidence · 1 citation

    Quote not shown (over 40 words). See the source at: Glossary, 'Base Coordinate System'.

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, 'Base Coordinate System'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  11. Confidence: Verifiedapp-033

    The record says

    In manual mode the arm compensates for gravity ('zero gravity'), so a person can move it by hand to teach positions.

    Evidence · 1 citation

    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.

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, 'Manual Mode'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  12. Confidence: Verifiedcomp-040

    The record says

    The 850 supports hand teaching: in Manual Mode, gravity compensation lets a user guide the arm directly by hand, with teach sensitivity adjustable from level 1 to 5.

    Evidence · 2 citations

    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.

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · Terms and Definitions, 'Manual Mode' and 'Teach Sensitivity', p.9 (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Teach sensitivity range is from 1 to 5 level.

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · same page (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  13. Confidence: Verifiedsafety-028

    The record says

    The 850's joint modules contain brakes that UFACTORY says hold the arm's pose during a power outage.

    Evidence · 1 citation

    The 850 joint module has brakes inside, which will remain manipulator’s pose when a power outage occurs.

    UFACTORY 850 Hardware Manual (online), 1. Safety · UFACTORY · 1.3, DANGER list

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  14. Confidence: Verifiedapp-034

    The record says

    UFACTORY's collision detection compares each joint's theoretical current with its actual current: the control system uses a dynamic model to calculate the theoretical current for each joint, and triggers collision detection when the difference exceeds a pre-set threshold.

    Evidence · 3 citations

    By comparing the theoretical current and actual current of each joint, the system determines whether a collision has occurred.

    Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY · Introduction

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    If the difference exceeds a pre-set threshold, indicating that the joint may have encountered external resistance or collision, the system triggers the collision detection.

    Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY · Section 1

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    The robot's control system calculates the theoretical current for each joint based on the dynamic model.

    Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY · Section 1

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  15. Confidence: Inferredsafety-087

    The record says

    No fetched UFACTORY document calls the 850's collision detection, safety boundary or reduced mode safety-rated, or gives them a performance level.

    Why we infer this: Verified: collision detection is a model-based current comparison that UFACTORY says can false-trigger with wrong settings and can be disabled (level 0, Advanced Settings toggle, a documented default password); safety boundary and reduced mode are software settings exposed in Studio and the SDK. UFACTORY distinguishes safety signals (EI/SI, redundant pairs) from non-safety devices. Inferred: no fetched UFACTORY source assigns a PL, Category or safety rating to these software functions (see the gap on performance level); this is a statement about the documents fetched, not proof that no rating exists.

    Evidence · 3 citations

    By comparing the theoretical current and actual current of each joint, the system determines whether a collision has occurred.

    Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY · Section 1

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    When it is set to 0, it means that collision detection is not enabled.

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, Collision Sensitivity

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Never connect a safety signal to a non-safety PLC.Failure to follow this warning may result in serious injury or death due to an invalid safety stop function.

    UFACTORY 850 Hardware Manual (online), 3. Controller Electrical Interface · UFACTORY · 3.1 Electrical Alarms and Cautions

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  16. Kind: RecommendationThis project's simulation and agent design, not the physical cellsafety-140

    Project advice

    Treat the 850's collision detection, safety boundary and reduced mode as configurable controller functions, not as validated safeguards: they must not replace the risk-assessed protective devices wired to the EI and SI inputs.

    This is advice from this project, based on: safety-087 Inferred safety-062 Verified safety-067 Verified safety-073 Verified safety-074 Verified safety-057 Verified

    Why: No fetched UFACTORY document gives these functions a safety rating or performance level (safety-087). Collision detection is a current-model comparison that can false-trigger and can be switched off (safety-062, safety-067); safety boundary and reduced mode are software settings (safety-073, safety-074). UFACTORY keeps safety signals separate from non-safety devices (safety-057). A function with no documented rating cannot stand in for a rated protective device.

  17. Confidence: Verifiedsafety-009

    The record says

    UFACTORY says no people or other equipment should be in the 850's working area while the arm is operating.

    Evidence · 1 citation

    When the robotic arm is in operation, make sure no people or other equipment are in the working area.

    UFACTORY 850 Hardware Manual (online), 1. Safety · UFACTORY · 1.3, DANGER list

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  18. Confidence: Verifiediface-039

    The record says

    The arm's default IP address is in the 192.168.1.xxx range, and the PC must be on the same network segment as the control box.

    Evidence · 1 citation

    The default IP of robotic arm is 192.168.1.xxx, please make sure that the IP address of the PC and control box are on the same network segment.

    UFACTORY Studio User Manual (online), 3. Connection · UFACTORY · 3.2 Software Connection

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  19. Confidence: Verifiediface-023

    The record says

    The 850 arm and its controller communicate with a host over Ethernet using a private (custom) TCP protocol.

    Evidence · 2 citations

    Robotic Arm Communication Protocol | Private TCP(custom)

    UFACTORY 850 Hardware Manual (online), 8. Technical Specifications · UFACTORY · Specifications table, 'Robotic Arm Communication Protocol' row

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Communication Method | Ethernet

    UFACTORY 850 Hardware Manual (online), 8. Technical Specifications · UFACTORY · Controller table, 'Communication Method' row

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  20. Confidence: Verifiedapp-024

    The record says

    The end effector mounts on the front end of the arm's wrist and carries the tool, such as a gripper or vacuum gripper, that does the work.

    Evidence · 1 citation

    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.

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, 'End Effector'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  21. Confidence: Verifiedapp-028

    The record says

    The arm can be commanded in two ways: joint motion moves point to point in joint space (angles in degrees), while TCP (linear) motion moves the tool along a Cartesian path such as a line or an arc.

    Evidence · 2 citations

    To achieve point-to-point motion in joint space (unit: degree), the speed is not continuous between each command.

    UFACTORY Studio User Manual (online), 9. Motion Characteristics · UFACTORY · Section 9.1.1 Joint Motion

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    TCP motion is the Cartesian space motion, with target position in Cartesian space coordinate and the end follows the specified trajectory(arc, line, etc.)

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, 'TCP Motion'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  22. Kind: RecommendationThis project's simulation and agent design, not the physical cellapp-039

    Project advice

    Use a TCP (linear) move when the tool's path matters, for example lowering a part straight down into a slot, and a joint move when only the end point matters.

    This is advice from this project, based on: app-028 Verified lim-023 Verified lim-024 Verified

    Why: A joint move goes point to point in joint space, so the tool follows whatever path the joint angles produce; a TCP move drives the tool along a chosen Cartesian path such as a line or an arc (app-028). Only the TCP move controls the path in between. It also carries costs a joint move does not: it can stop near a singularity (lim-023), and its joints can exceed their maximum speed (lim-024). So it earns its place where the path itself matters.

  23. Confidence: Inferredapp-032

    The record says

    The 850 has full 6-degree-of-freedom control in Cartesian space, so any reachable tool position and orientation can be specified; the 5-axis xArm 5 cannot do this.

    Why we infer this: UFACTORY's article says 6-axis (xArm 6) and 7-axis arms have full 6-DOF Cartesian control, while the 5-axis xArm 5 is limited to 4 Cartesian DOF. The 850 is also a 6-axis, 6-DOF arm (app-016), and its Cartesian range includes roll, pitch and yaw of ±180° (850 hardware manual, Technical Specifications). The article does not name the 850, so this is inferred rather than stated.

    Evidence · 2 citations

    Both robotic arms have a full 6 degrees of freedom in Cartesian space.

    The difference between UFACTORY xArm5, UFACTORY xArm6 and UFACTORY xArm7 (Help Center article) · UFACTORY · Section 3, 'Motion Characteristics of the UFACTORY xArm6 and UFACTORY xArm7'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    the actual flexible degrees of freedom of linear and circular motions in Cartesian space is 4, which is [x, y, z, yaw]

    The difference between UFACTORY xArm5, UFACTORY xArm6 and UFACTORY xArm7 (Help Center article) · UFACTORY · Section 3, xArm5 Cartesian control

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  24. Confidence: Verifiedapp-020

    The record says

    UFACTORY says the 850's industrial-grade harmonic drives and servomotors with 17-bit encoders support 24/7 operation and ±0.02 mm repeatability.

    Evidence · 1 citation

    Industrial-grade harmonic drive and servomotors with 17 bit encoder guarantee 24/7 working as well as ±0.02 mm repeatability.

    UFACTORY 850 product page · UFACTORY · 'Durable Collaborative Robots with Easy Deployment' section

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  25. Confidence: Verifiedcomp-007

    The record says

    The 850's joint modules contain brakes that hold the arm's pose when power is lost.

    Evidence · 1 citation

    The 850 joint module has brakes inside, which will remain manipulator’s pose when a power outage occurs.

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · Safety Precautions, General Alarms and Cautions item 9, p.15 (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  26. Confidence: Inferredcomp-075

    The record says

    How the 850's components work together: a computer or browser sends commands over Ethernet (UFACTORY's private TCP protocol) to the control box, which runs UFACTORY Studio and the controller. The control box powers the arm at 48 V DC and talks to the joints and to the tool over two RS-485 lines in the power and signal cable. Tools at the flange are powered (24 V) and controlled through the 12-pin tool connector.

    Why we infer this: Synthesised from Verified manufacturer statements in this file: Studio runs inside the control box; the arm connects to the PC over Ethernet with private TCP; the arm cable's 8-pin connector carries 48 V, GND and separate RS-485 pairs labelled Arm and Tool; the tool connector supplies 24 V and signals. That the RS-485 lines carry joint-servo and tool traffic follows from the pin labels; UFACTORY does not describe the internal bus architecture in these words.

    Evidence · 6 citations

    UFACTORY Studio is a web-based software running inside the control box

    UFACTORY 850 product page · UFACTORY · Tech Specs > Software (page names the machine 'UFACTORY 850'; spec tables say 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    1 48V 5 RS485-B, Green-White, Arm 2 GND 6 RS485-B, Blue-White, Tool

    UFACTORY 850 Hardware Manual (online), 3. Controller Electrical Interface · UFACTORY · 3.2.3 Definition of Industrial Connector (docs site 'UFACTORY 850 硬件手册', English version; names the machine 'UFACTORY 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Private TCP(custom)

    UFACTORY 850 Hardware Manual (online), 8. Technical Specifications · UFACTORY · Table 'UFACTORY 850', 'Robotic Arm Communication Protocol' row (docs site 'UFACTORY 850 硬件手册', English version; names the machine 'UFACTORY 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    This connector provides power and control signals for the grippers and sensors used on a particular robotic arm tool.

    UFACTORY 850 Hardware Manual (online), 4. Robotic Electrical Interface · UFACTORY · 4.2 Tool IO (docs site 'UFACTORY 850 硬件手册', English version; names the machine 'UFACTORY 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    there is an avionic socket 12-pin female industrial connector

    UFACTORY 850 Hardware Manual (online), 4. Robotic Electrical Interface · UFACTORY · 4.2 Tool IO

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Supply Voltage in 24V Mode 20 24 30 V

    UFACTORY 850 Hardware Manual (online), 4. Robotic Electrical Interface · UFACTORY · 4.2 Tool IO, electrical specifications

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  27. Confidence: Verifiedsafety-062

    The record says

    UFACTORY's collision detection compares each joint's actual motor current with the current predicted by a dynamic model, and triggers when the difference exceeds a preset threshold.

    Evidence · 2 citations

    The collision detection feature of UFACTORY robotic arms relies on the combination of current and dynamic models. By comparing the theoretical current and actual current of each joint, the system determines whether a collision has occurred.

    Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY · Introduction and section 1

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    If the difference exceeds a pre-set threshold, indicating that the joint may have encountered external resistance or collision, the system triggers the collision detection.

    Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY · Section 1

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  28. Confidence: Verifiediface-101

    The record says

    Mode 2 is manual (joint teaching) mode: the arm compensates for gravity so the links can be moved by hand, and it should be switched back to mode 0 when teaching is done.

    Evidence · 1 citation

    Quote not shown (over 40 words). See the source at: 10.1 Mode 2: Manual Mode.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 2: Manual Mode

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  29. Confidence: Verifiediface-095

    The record says

    The controller's motion modes and states correspond to the Python SDK calls set_mode() and set_state().

    Evidence · 1 citation

    The controller provides 7 motion mode and 6 state, corresponding to python SDK `set_mode()`, `set_state()`.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10. introduction

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  30. Confidence: Verifiediface-096

    The record says

    Mode 0 is position control mode, and the controller enters it by default after start-up.

    Evidence · 2 citations

    Mode 0: Position Control Mode

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 0

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    The control box enters this mode by default after startup.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 0

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  31. Confidence: Verifiediface-099

    The record says

    Mode 1 is servo mode: set_servo_angle_j and set_servo_cartesian need it and run only the latest target received, with no buffer.

    Evidence · 2 citations

    Note: the use of the set_servo_angle_j interface must first be set to this mode

    xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY · set_mode, mode 1 note

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

    Mode 1: Servo(ServoJ) Mode | This command has no buffer, only execute the latest received target point

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 1, Servo Joint Motion

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  32. Confidence: Verifiediface-104

    The record says

    Mode 4 is joint velocity control: vc_set_joint_velocity sets a speed for each joint and needs set_mode(4).

    Evidence · 1 citation

    Joint velocity control, need to be set to joint velocity control mode(self.set_mode(4))

    xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY · vc_set_joint_velocity

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

  33. Confidence: Verifiediface-105

    The record says

    Mode 5 is Cartesian velocity control: vc_set_cartesian_velocity sets a TCP velocity [x, y, z, rx, ry, rz] and needs set_mode(5).

    Evidence · 1 citation

    Cartesian velocity control, need to be set to cartesian velocity control mode(self.set_mode(5))

    xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY · vc_set_cartesian_velocity

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

  34. Confidence: Verifiediface-106

    The record says

    Velocity commands take a duration argument: a positive value stops the motion after that many seconds, and 0 keeps the speed until changed (firmware 1.8.0 or later).

    Evidence · 3 citations

    duration > 0: seconds, indicates the maximum number of seconds that this speed can be maintained

    xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY · vc_set_cartesian_velocity, parameter duration

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

    duration == 0: Always effective, will not stop automatically

    xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY · vc_set_cartesian_velocity, parameter duration

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

    Note: only available if firmware_version >= 1.8.0

    xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY · vc_set_cartesian_velocity, parameter duration

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

  35. Confidence: Verifiediface-107

    The record says

    Mode 6 is joint online trajectory planning: each new set_servo_angle command interrupts the current motion and is re-planned from the current position.

    Evidence · 1 citation

    Mode 6: Joint online planning Mode | Command sent by set_servo_angle(). In this mode, every time a motion command is received, the current motion command will be interrupted

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 6

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  36. Confidence: Verifiediface-108

    The record says

    Mode 7 is Cartesian online trajectory planning for set_position and set_position_aa; it only uses the base coordinate system as reference.

    Evidence · 2 citations

    Mode 7: Cartesian online planning Mode | Command sent by set_position() or set_position_aa().

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 7

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Cartesian online planning mode can only use **the base coordinate system** as the reference coordinate system

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 7, Note

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  37. Confidence: Verifiediface-109

    The record says

    Setting state 0 puts the arm in STANDBY in the current mode and clears the error code; the reported state then changes to 2 (ready) on its own.

    Evidence · 2 citations

    State 0 | Set: configure the robot the be STANDBY state in corresponding mode, and clear the error code as well.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 0

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    State 0 | Note: after this setting, the feedback state will switch to 2(REDDY) automatically.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 0

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  38. Confidence: Verifiediface-110

    The record says

    Reported state 1 means the robot is in motion.

    Evidence · 1 citation

    State 1 | Feedback. The robot is in motion.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 1

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  39. Confidence: Verifiediface-111

    The record says

    The Studio manual defines reported state 2 as ready to receive and execute commands.

    Evidence · 1 citation

    State 2 | Feedback. The robot is ready to receive and execute commands.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 2

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  40. Kind: Contradictioniface-117

    Sources disagree

    The Python SDK and the Studio manual name state 2 differently: the SDK's get_state and state documentation call it 'sleeping', while the Studio manual calls it ready to receive and execute commands.

    Evidence · 2 citations

    2: sleeping

    xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY · get_state / state property, return values

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

    Feedback. The robot is ready to receive and execute commands.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 2

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  41. Confidence: Verifiediface-112

    The record says

    Setting state 3 pauses a running motion, and setting state 0 resumes it; state 3 is also reported while paused.

    Evidence · 1 citation

    State 3 | set: set the robot to a PAUSED state when executing motion commands, the motion can be resumed by setting state 0.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 3

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  42. Confidence: Verifiediface-113

    The record says

    Setting state 4 stops the arm at once; it then accepts no new commands until the state is set back to standby (0). The controller also enters state 4 on its own when any error occurs.

    Evidence · 2 citations

    State 4 | set: set the robot to STOP state, it will terminate any execution immediately and will not receive or execute any new command until the state is set back to STANDBY.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 4

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    State 4 | will automatically switch to this state when any error occurs.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 4

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  43. Confidence: Verifiediface-114

    The record says

    State 5 (MODE_CHANGED) is entered on its own after critical settings change (mode, payload, TCP offset, collision sensitivity, etc.); the arm accepts no commands until state 0 is set.

    Evidence · 1 citation

    State 5 | MODE_CHANGED state, will automatically switch to this state if some critical configurations (mode, payload, TCP offset, collision sensitivity, etc) have been changed, and cannot receive and execute any command until set state 0.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 5

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  44. Confidence: Verifiediface-115

    The record says

    Setting state 6 makes the arm perform a decelerated stop immediately.

    Evidence · 1 citation

    State 6 | Set and Feedback. Perform a decelerated stop immediately.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.2 State 6

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  45. Confidence: Verifiedapp-029

    The record says

    For Cartesian (linear or circular) motion the controller must solve inverse kinematics to turn a tool pose into joint angles; that solution may not exist, may not be unique, or may be approximate.

    Evidence · 1 citation

    Linear motion and circular linear motion belong to the Cartesian space trajectory planning, which needs to be solved by inverse kinematics. Therefore, there may be no solution, multiple solutions, and approximated solutions

    UFACTORY Studio User Manual (online), 9. Motion Characteristics · UFACTORY · Section 9.1.2 Linear Motion

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  46. Confidence: Verifiedapp-027

    The record says

    UFACTORY describes tool orientation as roll, pitch and yaw: successive rotations about the fixed X, Y and Z axes of the reference (base) frame.

    Evidence · 1 citation

    Roll/Pitch/Yaw sequentially rotates around the X / Y / Z of the selected coordinate system (base coordinate system).

    UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY · Glossary, 'Roll/Pitch/Yaw(RPY)'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  47. Confidence: Verifiediface-013

    The record says

    Units differ by interface: the Python SDK and Blockly use degrees for joint angles and roll/pitch/yaw, while the raw communication protocol uses radians; positions are in millimetres in all three.

    Evidence · 2 citations

    | J1~J6 | degree° | degree° | radianrad |

    UFACTORY 850 Hardware Manual (online), Preface · UFACTORY · Preface, 'Unit Definition' table, row J1~J6

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    | Parameter | Python-SDK | Blockly | Communication Protocol |

    UFACTORY 850 Hardware Manual (online), Preface · UFACTORY · Preface, 'Unit Definition' table, header

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  48. Confidence: Verifiedlim-025

    The record says

    Current-based collision detection can trigger falsely if the TCP payload mass or centre of mass is set wrongly. UFACTORY's support article says that in pick-and-place programs the payload is typically set before the pick command and reset after the place command.

    Evidence · 2 citations

    Quote not shown (over 40 words). See the source at: Section 2.1 End Effector Load Setting.

    Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY · Section 2.1 End Effector Load Setting

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Typically, the payload is set before the "pick-up" command and reset after the "place" command.

    Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY · Section 2.1, 'Dynamic Payload Changes'

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  49. Confidence: Verifiediface-102

    The record says

    Mode 2 can only be entered from mode 0: from any other mode, a request for mode 2 first switches to mode 0, and mode 2 takes effect on a second command.

    Evidence · 1 citation

    Mode 2 must be configured via Mode 0.

    UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY · 10.1 Mode 2, Note

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  50. Confidence: Verifiediface-103

    The record says

    Mode 3 (Cartesian teaching mode) is marked invalid in the Python SDK.

    Evidence · 1 citation

    3: cartesian teaching mode (invalid)

    xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY · set_mode, parameter mode

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

  51. Confidence: Inferredapp-030

    The record says

    Forward kinematics runs the other way: given the six joint angles and the arm's geometry (link lengths, joint zero positions), there is exactly one resulting TCP pose. UFACTORY publishes the 850's geometry as D-H parameters.

    Why we infer this: The general definition comes from Mech-Mind, a robot-vision software vendor whose manual documents kinematics for integrating with many arm brands. It is a credible secondary educational source, but not UFACTORY's. It agrees with UFACTORY's own account of inverse kinematics (app-029). UFACTORY's publication of modified and standard D-H parameters for the 850 supplies the link geometry that forward kinematics requires.

    Evidence · 2 citations

    Forward kinematics calculates the TCP based on the known joint positions. By substituting joint positions into the robot’s configuration equations (including link lengths, joint zero positions, and rotation directions), the TCP can be uniquely determined.

    Robot Kinematics (Mech-Mind Software Suite manual 2.1.2, appendix) · Mech-Mind Robotics · Appendix 'Robot Kinematics', 'Forward Kinematics'

    © Mech-Mind Robotics · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Kinematic and Dynamic Parameters of UFACTORY 850
    1. Modified D-H Parameters

    Kinematic and Dynamic Parameters of UFACTORY 850 (support article) · UFACTORY · Article heading and section 1

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  52. Confidence: Verifiedapp-031

    The record says

    UFACTORY publishes both modified and standard Denavit-Hartenberg (D-H) kinematic parameters and link mass parameters for the 850, so users can model its kinematics and dynamics themselves.

    Evidence · 3 citations

    1. Modified D-H Parameters

    Kinematic and Dynamic Parameters of UFACTORY 850 (support article) · UFACTORY · Section headings

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    2. Standard D-H Parameters

    Kinematic and Dynamic Parameters of UFACTORY 850 (support article) · UFACTORY · Section headings

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    3. Mass Parameters

    Kinematic and Dynamic Parameters of UFACTORY 850 (support article) · UFACTORY · Section headings

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  53. Confidence: Verifiedcomp-013

    The record says

    In UFACTORY's modified D-H parameters for the 850, the link parameter a2 (upper arm length, Joint 2 to Joint 3) is 390 mm, and the uf850 kinematics file agrees (0.39 m).

    Evidence · 2 citations

    Joint3 180 390 0 90

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · Appendix 8, 1) UFACTORY 850 Modified D-H Parameters, p.187 (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    x: 0.39

    xarm_ros2 (branch humble), xarm_description/config/kinematics/default/uf850_default_kinematics.yaml · UFACTORY · kinematics block (ROS naming 'uf850')

    © UFACTORY Inc., xArm-Developer/xarm_ros2, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

  54. Confidence: Verifiedlim-023

    The record says

    Near a singularity the arm cannot carry out planned Cartesian (linear or circular) moves; it stops instead. UFACTORY advises avoiding the central area near the base.

    Evidence · 2 citations

    When the robot performs motion planning (linear, circular, etc., excluding joint movements) near the singularity point, it will stop to avoid high instantaneous speed of the joint when it passes the singularity point.

    UFACTORY Studio User Manual (online), 9. Motion Characteristics · UFACTORY · Section 9.3 Singularity

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    the robotic arm should try to avoid passing directly the central area near the base, which is likely to cause 1st Joint speed too high

    UFACTORY Studio User Manual (online), 9. Motion Characteristics · UFACTORY · Section 9.3 Singularity

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  55. Confidence: Verifiedlim-024

    The record says

    In Cartesian moves the joints can exceed their maximum speed and acceleration limits, because joint space and Cartesian space are related non-linearly.

    Evidence · 1 citation

    due to the nonlinear relationship between the joint space and Cartesian space, the joint motion may exceed its maximum speed and acceleration limits.

    UFACTORY Studio User Manual (online), 9. Motion Characteristics · UFACTORY · Section 9.1.2 Linear Motion

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  56. Confidence: Verifiediface-129

    The record says

    Controller error 22 is a self-collision error, 23 means a joint angle is past its limit, and 24 means speed is over its limit.

    Evidence · 3 citations

    - 22: Self-Collision Error

    xArm-Python-SDK API code description (doc/api/xarm_api_code.md) · UFACTORY · Controller Error Code

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

    - 23: Joints Angle Exceed Limit

    xArm-Python-SDK API code description (doc/api/xarm_api_code.md) · UFACTORY · Controller Error Code

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

    - 24: Speed Exceeds Limit

    xArm-Python-SDK API code description (doc/api/xarm_api_code.md) · UFACTORY · Controller Error Code

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

  57. Confidence: Inferredlim-042

    The record says

    A straight-line or circular (Cartesian) move that would drive a joint past its maximum speed is one likely cause of controller error 24, 'Speed Exceeds Limit'. UFACTORY does not link the two in one statement.

    Why we infer this: Verified: in Cartesian moves the joints may exceed their maximum speed and acceleration, because joint space and Cartesian space are related non-linearly (lim-024). Verified: controller error 24 means speed exceeds its limit (iface-129). No UFACTORY source says that such a Cartesian move raises error 24, so the link is inferred. It is a cause to check first, not the only possible one.

    Evidence · 2 citations

    due to the nonlinear relationship between the joint space and Cartesian space, the joint motion may exceed its maximum speed and acceleration limits.

    UFACTORY Studio User Manual (online), 9. Motion Characteristics · UFACTORY · Section 9.1.2 Linear Motion

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    - 24: Speed Exceeds Limit

    xArm-Python-SDK API code description (doc/api/xarm_api_code.md) · UFACTORY · Controller Error Code

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

  58. Confidence: Inferrediface-029

    The record says

    In the Modbus TCP map, holding register 32 (0x20) is the robot mode and holding register 33 (0x21) is the robot state.

    Why we infer this: Verified: UFACTORY's ModbusTCP User Instructions (UF_ModbusTCP_Manual, in the xArm-Python-SDK repository) state this. That manual names no robot model, and iface-026 establishes that the 850 controller accepts standard Modbus TCP on port 502, but no 850-specific UFACTORY document gives this register map or its details; the 850 bridging records (iface-145, iface-146) cover UFACTORY Studio and the SDKs, not this manual. Verified: UFACTORY's release note for firmware V2.7.0 lists, in one firmware change list, a Modbus TCP change and compatibility for xArm 850 arms whose serial number has an 'E' as the third character from the end (lim-030). Inferred: the 850 therefore runs the same series firmware that carries this Modbus TCP interface, and the interface very probably behaves the same on the 850, but this is not confirmed for the 850 until an 850 document or the physical controller shows it.

    Evidence · 4 citations

    | 32 | 0x20 | Robot Mode |

    UFACTORY ModbusTCP User Instructions (xArm-Python-SDK doc/UF_ModbusTCP_Manual.md) · UFACTORY · Appendix, Holding Registers

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

    | 33 | 0x21 | Robot State |

    UFACTORY ModbusTCP User Instructions (xArm-Python-SDK doc/UF_ModbusTCP_Manual.md) · UFACTORY · Appendix, Holding Registers

    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21

    Modbus TCP: added a method to trigger trajectory execution or Python scripts.

    UFACTORY Release Note v2.7.0 · UFACTORY · v2.7.0, 'Firmware V2.7.0' list

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Added compatibility for xArm XX1305-series and xArm 850 arms whose serial number has an "E" as the third character from the end.

    UFACTORY Release Note v2.7.0 · UFACTORY · v2.7.0, 'Firmware V2.7.0' list

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  59. Confidence: Verifiedcomp-017

    The record says

    UFACTORY calls the control box the core of the 850: it houses the arm's control system.

    Evidence · 1 citation

    The control box, core part of the robotic arm, is the integration of the robotic arm control system.

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · Terms and Definitions, 'Control Box', p.6 (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  60. Confidence: Verifiedcomp-021

    The record says

    The 850 control box front panel has a ROBOT PWR indicator (on when the arm is powered), a STATE indicator (flashes when the control box is powered), a LAN indicator (on when communicating normally), and an EMERGENCY STOP button.

    Evidence · 4 citations

    ROBOT power indicator ROBOT PWR The light is on, indicating that the 850 is powered on.

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · Hardware Section 1.1.3 Control Box Description, p.20 (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Emergency stop button EMERGENCY STOP

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · same table (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Control Box power status indicator STATE The light flashes, indicating that the control box is powered on.

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · same table (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

    Network port indicator LAN The light is on, indicating that the 850 is communicating normally.

    UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY · same table (manual names the machine '850' / 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  61. Confidence: Verifiedsafety-029

    The record says

    UFACTORY says the control box must be placed outside the arm's working range so that its emergency stop button can be reached in an emergency.

    Evidence · 1 citation

    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.

    UFACTORY 850 Hardware Manual (online), 1. Safety · UFACTORY · 1.3, CAUTION

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  62. Confidence: Verifiedcomp-053

    The record says

    The 850's tool end has a user button with a blue LED, mapped to tool digital I/O TI2 and TO2; its function is left for the user to define.

    Evidence · 1 citation

    The function of this button has not been defined yet, user can custom and develop it. Tool Digital IO: TI2, TO2.

    UFACTORY 850 Hardware Manual (online), 4. Robotic Electrical Interface · UFACTORY · 4.4 Lighting (docs site 'UFACTORY 850 硬件手册', English version; names the machine 'UFACTORY 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  63. Confidence: Verifiedops-057

    The record says

    The Studio STOP button stops the arm immediately and clears all cached commands; it is a software stop and the power stays on.

    Evidence · 1 citation

    **STOP:** The robotic arm will stop immediately and clear all cache commands. It's a **software stop**, the power is still on.

    UFACTORY Studio User Manual (online), 4. Live Control · UFACTORY · 4.5 Enable & STOP button

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  64. Confidence: Verifiedsafety-035

    The record says

    The STOP button in UFACTORY Studio is a software stop that leaves arm power on.

    Evidence · 1 citation

    The robotic arm will stop immediately and clear all cache commands. It's a software stop , the power is still on.

    UFACTORY Studio User Manual (online), 4. Live Control · UFACTORY · 4.5 Enable & STOP button

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

  65. Kind: Gapcomp-006

    Not known

    Per-joint component data for the 850 (motor model and rating, harmonic-drive ratio, encoder type and whether it is single- or multi-turn absolute, and joint-module sizes for J1–J6) is not published in the product page, the manuals or the URDF fetched.

    Evidence · 1 citation

    Industrial-grade harmonic drive and servomotors with 17 bit encoder

    UFACTORY 850 product page · UFACTORY · Overview (the only drive-train description found) (page names the machine 'UFACTORY 850'; spec tables say 'UFactory 850')

    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21

Image credits

  • A line drawing of the 850 arm with Joint 1 to Joint 6 labelled and a curved arrow at each joint showing its direction of rotation. © UFACTORY (Shenzhen UFACTORY Co., Ltd.). Source. Used with UFACTORY's written permission (2026-09-23), on the condition that each image links back to its source page.
  • 3D model: © 2018 UFACTORY Inc., BSD-3-Clause, from UFACTORY Inc. (xArm-Developer/xarm_ros2). Licence text · Source

Sources for this section

  • Collision Detection in UFACTORY Robotic Arms: Current and Dynamic Model-based Feature (UFACTORY support article) · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 4 records here · Open the source
  • IntelliMake Phase 1 Factory: Autonomous Production Demonstrator (infographic) · IntelliMake.org (IntelliMake)
    © IntelliMake.org. Used with permission; redrawn for this platform. · Cleared for use by its owner · retrieved 2026-09-21 · cited by 2 records here · Project copy; not published on this site.
  • Kinematic and Dynamic Parameters of UFACTORY 850 (support article) · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 2 records here · Open the source
  • Robot Kinematics (Mech-Mind Software Suite manual 2.1.2, appendix) · Mech-Mind Robotics (secondary)
    © Mech-Mind Robotics · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 1 record here · Open the source
  • The difference between UFACTORY xArm5, UFACTORY xArm6 and UFACTORY xArm7 (Help Center article) · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 1 record here · Open the source Plain http: this publisher has no certificate for that name, so what loads cannot be verified.
  • UFACTORY 850 Hardware Manual (online), 1. Safety · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 3 records here · Open the source
  • UFACTORY 850 Hardware Manual (online), 2. Hardware Installation · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 1 record here · Open the source
  • UFACTORY 850 Hardware Manual (online), 3. Controller Electrical Interface · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 2 records here · Open the source
  • UFACTORY 850 Hardware Manual (online), 4. Robotic Electrical Interface · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 2 records here · Open the source
  • UFACTORY 850 Hardware Manual (online), 8. Technical Specifications · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 2 records here · Open the source
  • UFACTORY 850 Hardware Manual (online), Preface · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 1 record here · Open the source
  • UFACTORY 850 product page · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 5 records here · Open the source
  • UFACTORY 850 User Manual V2.3.0 (PDF, older edition) · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 6 records here · Open the source
  • UFACTORY ModbusTCP User Instructions (xArm-Python-SDK doc/UF_ModbusTCP_Manual.md) · UFACTORY (manufacturer)
    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21 · cited by 1 record here · Open the source
  • UFACTORY Release Note v2.7.0 · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 1 record here · Open the source
  • UFACTORY Studio User Manual (online), 10. Robotic Arm Motion Mode and State · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 16 records here · Open the source
  • UFACTORY Studio User Manual (online), 2. Glossary · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 8 records here · Open the source
  • UFACTORY Studio User Manual (online), 3. Connection · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 1 record here · Open the source
  • UFACTORY Studio User Manual (online), 4. Live Control · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 2 records here · Open the source
  • UFACTORY Studio User Manual (online), 9. Motion Characteristics · UFACTORY (manufacturer)
    © UFACTORY · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 5 records here · Open the source
  • UFACTORY USA 850 product page · UFACTORY USA (manufacturer)
    © UFACTORY USA · All rights reserved; quoted briefly as evidence · retrieved 2026-09-21 · cited by 1 record here · Open the source
  • xArm-Python-SDK API code description (doc/api/xarm_api_code.md) · UFACTORY (manufacturer)
    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21 · cited by 2 records here · Open the source
  • xArm-Python-SDK API documentation (doc/api/xarm_api.md) · UFACTORY (manufacturer)
    © UFACTORY Inc., xArm-Developer/xArm-Python-SDK, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21 · cited by 6 records here · Open the source
  • xarm_ros2 (branch humble), xarm_description/config/kinematics/default/uf850_default_kinematics.yaml · UFACTORY (manufacturer)
    © UFACTORY Inc., xArm-Developer/xarm_ros2, BSD 3-Clause licence · BSD-3-Clause · retrieved 2026-09-21 · cited by 1 record here · Open the source

IntelliMake diagrams are redrawn as native figures, © IntelliMake.org. UFACTORY does not endorse this platform.

All sources and attribution