A robot program — without stopping the cell
The path is written on the cell twin while the cell keeps working. What goes to start-up is a program that has already passed plunge and collision checks.
The cell works while its next program is being written
When programming from a pendant the cell stands still: the robot is led point by point until it remembers the path. Every new part is a new stop.
Offline programming moves this work to the cell’s twin. The robot path is written in the browser using places already in the twin, checked before start, and only then goes to the cell — the axes are driven by our control.
The process engineer names the intent — transfer, flip, weld a seam. The platform derives points, poses, axis order and checks. Guesses where they would cost a part are replaced by a refusal with a reason.
Without stopping the cell
The program is prepared while the cell produces the current part.
Verified before start
Air cuts, plunges, collisions and fit — against one cell model.
Portable
The path text does not depend on the coordinates of a specific cell: places come from its twin.
Five steps to start-up
- Cell placesVice, turnover unit, pallet, welding table — by name; coordinates live in the twin and are measured by teaching.
- Program“New program” — the “motion” kind and the machine are chosen once; the list splits machines by suitability.
- Path in verbsTransfer, flip, orbit, seam: the lab — code on the left, the cell in 3D on the right, recalculation on every change.
- ChecksFindings are split into errors, warnings and notes; an error locks the start.
- RunVirtual axes first, then drives — the mode is chosen explicitly, the hardware’s answer is visible on screen.
What the program does not hard-code but takes from the twin
| What | Source | Why so |
|---|---|---|
| Cell places | Twin; measured by teaching | The program names the place; no such place — a refusal listing what exists |
| Start point | Twin | The program starts and ends at it — so it can be put into the procedure in any order |
| Program base | Twin; taught | Numeric points count from the base; a move by place name does not follow the base |
| Jaw span, stick-out, valve port | Tooling datasheet and current setup | Not duplicated in the program text and not guessed |
| Part | Size, place, grip side — named by the author | Grip point, top, centre and span are derived from the size |
Having to edit the text for a cell means knowledge about the cell has leaked into the intent. The edit is made in the twin, and the program stays the same.
What gets caught while the cell keeps working
One set of maths
Air cuts, plunges, collisions and fit are calculated over one mechanism description. A motion run is judged to the end of the program, not to the first block.
Three levels of findings
An error locks the start. A warning is a legitimate intent that must not go unmentioned. A note is for information.
“Not verified” instead of zero
Unknown stick-out is named as such. Sending is blocked by a slot without a stick-out of named origin — datasheet or measurement.
| Situation in the program | Reaction |
|---|---|
| Flip with a top grip | refusal — a side grip is needed |
| The path welds but the arc output is not bound | refusal — the jaw valve would twitch instead of the arc |
| The arc is lit and not extinguished | refusal — the torch would travel to the start point while burning |
| Start point not set | warning — start from wherever the arm stands now |
| The path ends with closed jaws | warning — legitimate if the part is handed on |
The full list of verbs and refusals — “Robots and tooling”.
Where an offline program pays for the stop it avoids
Machine tending
Moving a blank into the vice and a finished part onto a pallet, flipping in place. A flip invalidates the part zero — before the next cut of the same part, probing the blank by touch is mandatory.
Welding
A seam by points, welding around a part contour with the nozzle tilted outward, a circular seam on a pipe joint: the ring is defined by the pipe, the start point is the farthest from the robot.
Palletizing
The palletizer tool is a “smart clamp”: servo plates, forks, suction cups — one tooling kind with its own axes and signals.
Orbiting a part
The head moves along an arc around the part and faces the surface along the whole arc; the jaws are empty, the point step comes from the chord tolerance.
Each axis has one owner at any moment
The positioner is an external seam axis
When the positioner turns the part under the torch, it is part of the cell’s seam program. With a two-axis positioner the table makes a circular seam while the torch stays still.
Changing the owner — only at rest
A robot can make a seam with a motion program and move a part with an automation block, but not at the same time: these are two program steps with rest between them.
Why this rule
Two programs writing one axis fight over it. The limitation is accepted deliberately: there is no taking over an axis on the move.
From a verified program to arm motion
| Stage | What happens |
|---|---|
| Set up and send | The test bench and axis profiles are made current; if the test bench is taken by a project, the platform asks whether to unbind it |
| Start | The configuration is generated from the twin and sent to the box; each step of the chain is a test bench answer |
| Home | On absolute encoders — no search; without homing automatic mode does not start |
| Program | Executed step by step; the monitor shows coordinates and 3D from actual data |
| Stop | One command in every window |
Program header
Carries the orientation convention, tool axis direction, grip method and gripper port — what cannot be recovered from coordinates.
Virtual axes
No bus and no torque: the program and block order are checked without risk. A green run here does not prove the axis will move on hardware.
Drives
Torque is applied only inside a motion step; the hardware’s answer — position, following error, status word — is on screen.
A program you can put into the cycle
- Start and end — at the start pointThe program is put into the cell procedure in any order.
- Findings by levelAn error locks the start; warnings and notes are for information.
- “Not verified” instead of zeroAn unknown tool stick-out is named as such, not taken as zero.
- One program — different armsPlaces come from the twin of the specific cell; the path text stays the same.
The 6-axis arm is at an experimental maturity level; the program on your cell is worked out in the implementation.
Who gets what
Robot programmer
Writes intent with verbs, not points from a pendant; refusals come with a reason and numbers.
Process engineer
Changes the part size or place — the path is recalculated without rewriting.
Area manager
A new part does not stop the cell for teaching.
Integrator
The program is ready before the robot arrives and verified on the twin of the customer’s cell.
Robots, positioners and gripper — per the manufacturer’s datasheet
Geometry, axes and limits of the models are taken from the manufacturer’s datasheet or STEP. Every model is marked “per datasheet”: on the bench their axes run on virtual axes.
| Manufacturer · model | Kind | Axes | Mark |
|---|---|---|---|
| KUKA KR16 | arm | 6 | per datasheet |
| CRP RA18-25 | arm | 6 | per datasheet |
| CRP RH15-15-HP | milling robot | 6 | per datasheet |
| CRP RP32-180 | palletiser | 4 | per datasheet |
| CRP RS04-03 | SCARA | 4 | per datasheet |
| CRP WB1K-500, WB1S-750, WB2S-250, WB3S-500 | welding positioners | 1–3 | per datasheet |
| CRP WD250-6000 | linear track | seventh axis | per datasheet |
| MotoPos D500 | tilt-rotate positioner | 2 | per datasheet |
| Robotiq 2F-85 | two-finger gripper | one actuator | per datasheet |
| KUKA KR16 + CRP WB2S-250 | composite kind: arm and positioner | arm 6 + positioner | per datasheet |
Our control drives the axes
The robot model in the twin moves by the platform’s program; the axes are driven by our control, on the bench — virtual axes.
No post-processors
There are no post-processors into robot languages: the program is not exported to the manufacturer’s robot controller, and we do not claim control of that controller.
Your model
A model that is not in the library is assembled from the manufacturer’s STEP; scope and timing — as agreed during the implementation.
Discuss an implementation
Describe the cell and the part — we will build it in the twin, write the program and propose an R&D stage with price and timeline.
Request accessDiscuss an implementation
Describe the unit or line — we will tell you what we will verify and in what time. Target indicators are fixed in the implementation specification.
Request access