Today’s robots are intended for direct human-to-robot interaction. These collaborative robots specialize in sharing tasks and spaces with humans. The UFACTORY xArm series is one of the most affordable collaborative robot (or cobot) arms in the market. It is designed for light manufacturing, commercial uses and lab applications. The xArm is automated and easily programmable. It is built upon the best specs and functions of industrial robots - manufacturing robots, assembly line robots and factory robots. The xArm has options for a 5, 6, and 7 axis arm, and with its uncanny human-like flexibility, it has become an exceptionally practical and efficient industrial robot arm. The xArm series has been designed as a very open system to accept a very wide variety of end effectors.

The purpose of this article is to describe how to use third party equipment on the xArm.

Here are some cautions:

1) The end effectors currently supported by the xArm are: xArm Gripper,

xArm Vacuum Gripper, xArm BIO Gripper, Robotiq-2F-85 Gripper, Robotiq-2F-140 Gripper.

2) The third-party end effector that you use must support either the Modbus-RTU communication protocol (based on RS-485) or IO control.

The hardware installation of the third-party end effector

1. Electrical Setup

The xArm is shipped with a 12 pin end tool connection cable. You can use the end tool connection cable to connect the xArm and the third-party end effector.

There are 12 pins inside the cable with different colors, each color represents different functions, please refer to the following table:

Pin sequence

Color

Signal

1

Brown

+24V(Power)

2

Blue

+24V(Power)

3

White

0V (GND)

4

Green

0V (GND)

5

Pink

485-A

6

Yellow

485-B

7

Black

Digital Input 0

8

Grey

Digital Input 1

9

Red

Digital Output 0

10

Purple

Digital Output 1

11

Orange

Analog input 0

12

Light Green

Analog input 1

The electrical specifications are as follows:

Note: * It is strongly recommended to use a protection diode for inductive loads.

Parameter

Min. Value

Typical Value

Max. Value

Unit

Supply Voltage in 24V Mode

-

24

30

V

Supply Current *

-

-

1800

mA

Note:

The digital output is implemented in the form of NPN with an open collector(OC). When the digital output is activated, the corresponding connector will be driven to GND. When the digital output is disabled, the corresponding connector will be open (open-collector/open-drain). The electrical specifications are as follows:

Parameter

Min

Typical

Max

Unit

Open-circuit Voltage

-0.5

-

30

V

Voltage when sinking 50mA

-

0.05

0.20

V

Sink Current

0

-

50

mA

Current through GND

0

-

50

mA

2. Mechanical Installation

The end tool flange of xArm refers to the DIN ISO 9409-1-A50/A63 standard. You can refer to the size of the figure below for installation. If necessary, refer to the figure below to design mechanical adapters.

Mechanical dimensions of end-effector flange (unit: mm)

The software setting of the third-party end effector

1. TCP Settings

1.1 TCP Payload Settings

Set TCP Payload on the xArm Studio

1) Enter "Settings"-"TCP"-"TCP-Payload"

2) Click the button 【New】to create the TCP Payload of the end effector.

3) There are two ways to create a new TCP payload: (1) Manual Input (2) Identification

Manual Input: Manually inputting can be selected if the weight of the payload and the approximate center of gravity of the payload are known.

Identification: The robotic arm needs to run a series of action commands to calculate the parameters of the TCP payload.

Note:

* Once the name of the new payload has been determined, it cannot be changed.

* The current robotic arm must be mounted on a steady floor if automatic identification is selected.

Set TCP Payload on the xArm-Python-SDK

Please use the following interface to set the TCP Payload of the end effector.

set_tcp_load()

Please refer to the document about the detailed content of the interface:

https://github.com/xArm-Developer/xArm-Python-SDK/blob/master/doc/api/xarm_api.md

1.2 TCP Offset Settings

Set TCP Offset on the xArm Studio

1) Enter "Settings"-"TCP"-"TCP Offset "

2) Click the button 【New】to create the TCP Offset of the end effector.

Set TCP Offset on the xArm-Python-SDK

Please use the following interface to set the TCP Offset of the end effector.

set_tcp_offset()

Please refer to the document about the detailed content of the interface:

https://github.com/xArm-Developer/xArm-Python-SDK/blob/master/doc/api/xarm_api.md

2. Self-Collision Prevention Model Settings

● Set Self-Collision Prevention Model on the xArm Studio

1) Enter "Settings"-"End Effector"

2) When installing the third-party end effectors (not officially provided) at the end of the robotic arm, please choose 【other】.

3) You can choose a 3D model (cylinder/cuboid) that can wrap the end effector and use it as the self-collision prevention model of the end effector.

4) Turn on the switch of the self-collision prevention model

5) Click the button of the "Save"

Note

If the state of the Self Collision Prevention is OFF, you can through the following method to turn on the Self Collision Prevention.

Method:

1) Enter "Settings"-"Advanced"-"Advanced Tool"-"Advanced Logic"

2) Turn on the switch of the self-collision prevention

3) Click the button of the "Save"

● Set Self-Collision Prevention Model on the xArm-Python-SDK

Please use the following interface to set the Self-Collision Prevention Model of the end effector.

set_collision_tool_model()

Please refer to the document about the detailed content about the interface:

https://github.com/xArm-Developer/xArm-Python-SDK/blob/master/doc/api/xarm_api.md

3.Control method of the end effector

3.1 Control the end effector through digital IO

● Blockly

● xArm-Python-SDK

#set Tool Output 0 to low
arm.set_tgpio_digital(0,0)

#set Tool Output 0 to high
arm.set_tgpio_digital(0,1)

3.2 Control the end effector through Modbus-RTU communication protocol

Please the article: Guide to use the Robotiq Gripper on xArm

Did this answer your question?