← Help Center

FAIRINO, ABB and KUKA robots: what to set in the cell

Which controllers Oprela supports, which robot models are in the catalogue, and what to enter in the cell equipment so the program is generated correctly.

Supported controllers

  • FAIRINO (FR3…FR30) — an FR Lua program.
  • ABB on IRC5 / OmniCore — a RAPID module (.mod). Experimental until the first run on an ABB cell.
  • KUKA on KR C4 / KR C5 (KSS 8.x) — a KRL program (.src). Experimental.

The controller is chosen in the cell settings ("Cells" tab).

Robot models

In "Registry & survey" you can take an official kinematics description (URDF) from the catalogue:
  • FAIRINO V6: FR3, FR5, FR10, FR16, FR20, FR30;
  • ABB: IRB 1200, IRB 1600, IRB 2600, IRB 4600, GoFa CRB 15000 (10 models);
  • KUKA: the welding KR 8 R1440-2 arc HW, KR 8 R2100-2 arc HW, KR 12 R1450-3 HW; KR 16, KR 20; Agilus KR 6 / KR 10; KR 30 / 50 / 70; KR 120 / KR 210; the older KR 5 arc, KR 16-2, KR 150-2 (17 models).

For KUKA the axis signs were checked at HOME, as on the controller. A model that is not in the catalogue can be loaded from your own URDF file.

FAIRINO

Signals, tools and coordinate frames are given by number (io_map, tool_frames, work_frames). "Insert FRLua V4 dialect (FAIRINO manual)" adds the command syntax from the FAIRINO manual.

ABB

ABB refers to everything by name. "Insert ABB names (tool, work object, signals)" adds a template in which every name must be replaced by the one configured on the controller:
  • tool_names — the tooldata of each tool (e.g. tLaserHead);
  • work_object_names — the wobjdata of each work frame (wobj0 = the robot base);
  • io_map..name — the name of each signal (e.g. doLaserOn).

Without a tool name no program is generated: tool0 is the bare flange, and every point would be off by the length of the head. The program enters each seam with MoveAbsJ to the checked joint values; the seam itself runs with MoveL.

KUKA

KUKA numbers things. "Insert KUKA numbers (tool, base, I/O)":
  • tool_frames — the TOOL_DATA number (1–16) of the tool; LOAD_DATA uses the same number;
  • work_frames — the BASE_DATA number (1–32; 0 = the world frame);
  • io_map..index — the $IN / $OUT / $ANOUT number;
  • tool_direction — the tool's working direction on the controller ($TOOL_DIRECTION): X (the KSS default) or Z. Oprela turns the points to match.

The analog output $ANOUT is a fraction from −1 to 1 (of 10 V), not volts: the signal's scale in io_map must give −1…1, or generation stops. The program enters a seam with PTP {A1…A6} to the checked joint values, then LIN. Save the file under the name in the DEF line (e.g. Oprela_RACK_W1.src).

Positioner (external axis)

If a seam is welded with a positioner, set in the cell which field the controller knows its axis by — ext_axes:
  • ABB — the extax field: e.g. "positioner": "eax_a". The axis value is written into every move target, and the turn before a seam is a MoveExtJ;
  • KUKA — E1…E6: e.g. "positioner": "E1". The value goes into PTP / LIN, the turn before a seam is PTP {E1 …}.

Without it no program is generated — the axis value is never lost silently. Robot targets are written in the robot base at the positioner angle of that point; between points the robot and the positioner interpolate separately, so keep the points on the seam dense and make the first run a trial.

Vendor technology packages

Weaving, seam tracking, touch sensing and the positioner (ArcTech, LaserTech, SmartTac, Weldguide and so on) are called only through the cell's dialect templates, taken from a reference program on that controller. Without a template no program is generated — Oprela does not guess package commands.

Compatibility (what is proven)

The "Compatibility" tab shows, for every cell, what is proven for the post it would generate with now. The combination is exact: post version, robot model, controller, firmware, controller options, tool and process source. Statuses:
  • experimental — nothing proven (the default);
  • verified in a simulator — the vendor's tool (RobotStudio, WorkVisual / OfficeLite, WebApp) accepted the program: the tool, the file's sha256, the date;
  • verified on a cell — a revision with a verified dry run on its file, the cell, the date;
  • failed — what did not work; Oprela then generates no program for that combination.

One verified model does not verify the brand, and a new post version needs new proof.

First run

Until the cell is marked as verified on its controller, the program carries a warning. Run it first in manual mode at reduced speed, without the laser.