Robot arm basics

Never touched a robot arm before? Start here. This page explains the handful of words and ideas that every industrial-arm workflow uses, in plain language, before you wire up a single component. If you have run an arm before, skip ahead to Hello World.

The one-sentence version: a robot arm is a stack of motors that carries a tool to a spot in space and points it a certain way. Everything below is just how we describe where, how it points, and how it gets there.

What a robot arm actually is

An industrial arm is a chain of rigid segments (links) connected by motors (joints). Think of your own arm: shoulder, elbow, wrist. Each joint adds one way to move. A Lite 6 has 6 joints, numbered J1 (at the base) to J6 (at the wrist). We also call these axes, so a "6-axis arm" just means six motors in a row.

Six joints is the magic number: it is the minimum needed to put the tool at any position and any angle within the arm's reach. Fewer joints (like the 5-axis xArm 5) means some angles are simply not reachable.

The tool: end-effector, flange, and TCP

The thing you attach to the flange is the end-effector (also called the tool): a gripper, a suction cup, a pen, a glue nozzle, a camera. The arm's whole job is to carry this tool around.

Here is the key idea beginners miss: the robot moves the flange, but you care about the tip of the tool. If you bolt on a 100 mm pen, the pen tip is 100 mm past the flange. That tip is called the TCP, the Tool Center Point. When you tell the robot "go here," you almost always mean "put the TCP here," not the flange.

Why TCP matters: get the TCP wrong and every move is off by the length of your tool. Setting the TCP correctly is what makes the pen actually touch the paper instead of hovering 100 mm above it. Egret has a whole page on this, see End-effectors & TCP.

Describing a spot: position, orientation, and frames

To place a tool you need two things:

Position plus orientation together is called a pose. In Rhino and Grasshopper, a pose is just a Plane: a Plane has an origin (the position) and axes (the orientation). So when Egret asks for a target Plane, it is asking "where should the tool tip go, and which way should it face?"

All of this is measured relative to a frame (a coordinate system). The two you will meet first:

Two ways the robot can move

Every move happens in one of two "spaces," and knowing the difference explains the motion types below.

Turning a tool pose into motor angles is called inverse kinematics (IK). You do not do this by hand; Egret and the robot handle it. Just know the word: if you hear "no IK solution," it means the spot you asked for is out of reach or the arm cannot twist that way.

Motion types: PTP, LIN, and CIR

These three show up on almost every robot, in Egret and everywhere else. They answer "what shape of path does the tool take between two poses?"

NamePathUse it for
PTP
(point to point)
Fastest route in joint space. The tip travels a curved, unpredictable path, but it gets there quickly and can always do it. Moving through open air where the exact path does not matter: reaching to a pick spot, returning home.
LIN
(linear)
A dead-straight line in space. The robot coordinates all joints so the tip travels in a ruler-straight line. Anything where the path matters: laying a bead of glue, cutting, pressing down, approaching a part so you do not crash into it.
CIR
(circular)
An arc. You give a start, a middle (via) point, and an end, and the tip sweeps the curve through all three. Rounded paths: following a curved edge, drawing an arc, smooth blends.
Rule of thumb: use PTP to get somewhere fast when nothing is in the way, and LIN the moment the tool is near the part or doing real work. New users almost always want LIN for the "working" moves and PTP for the "travel" moves.

A few more words you will see

Simulate first, always

You never have to guess on real hardware. Egret runs the entire program as a simulation in Grasshopper first, for free, forever. You watch the arm move on screen, catch reach and collision problems, and only send it to a real robot once it looks right. Full simulation costs nothing and needs no robot plugged in.

How these ideas map to Egret

Every term above is a component you will wire up. Here is the shortcut:

IdeaEgret component
Set the tool and its TCPTool (TCP), Custom Tool, and the gripper/vacuum presets
Define a target posePose, plus Rhino Planes as your targets
Move fast through airPTP
Move in a straight lineLIN
Move along an arcCIR
Watch it move on screenSim
Turn it into robot codeCode (Python or G-code)

See the full list on the Component reference, and follow Hello World to build your first program in about ten minutes.

Safety, up front: a real arm can move fast and does not know you are there. Keep clear of its reach when it is enabled, know where the e-stop is, and read the safety disclaimer before you send any motion command.