Yaskawa MA1400 TCP Repeatability Check: Fronius TPS Monitoring

Jason IP13 min read
RoboticsTechnical ReferenceYaskawa
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Yaskawa MA1400 TCP Repeatability Check: In-Process Monitoring of Weld Consistency

The Yaskawa Motoman MA1400 is a 6-axis arc-welding robot with 6 kg payload and 1.4 m reach, factory-rated at ±0.08 mm pose repeatability per the official MA1400 datasheet. When paired with a Fronius TPS power source, the TCP (Tool Center Point) defines the relative position between the welding torch and the robot flange — the single variable that determines where the arc actually strikes. A 1–2 mm TCP drift on a thin-wall automotive or structural component directly translates to porosity, undercut, and missed welds. This reference describes a methodology for verifying TCP consistency in automatic mode without halting the cell, covering calibration verification, search-job construction, and statistical monitoring.

Terminology note: TCP in this document refers to Tool Center Point (robotics). The same acronym is widely used for Transmission Control Protocol in industrial networking — see TCP (Transmission Control Protocol). The two concepts are unrelated but the acronym collision is a common source of confusion when searching technical KB articles.

1. System Architecture: MA1400 + DX200 + Fronius TPS

The MA1400 is typically delivered with a Yaskawa DX200 (legacy) or YRC1000 (current) controller. Older units may still be running FS100 or NX100 firmware, both of which are still supported for service work. The Fronius TPS 270i / 320i / 400i / 500i is the most common power source paired with MA1400 cells because both vendors ship a certified DeviceNet or EtherNet/IP robot-interface option (Fronius "RobotInterface" or "RI").

Yaskawa MA1400 controller compatibility matrix
Controller INFORM version Fronius interface Touch-sense support
NX100 INFORM II DeviceNet (RI-DN) Yes (V+ search)
FS100 INFORM II DeviceNet / EtherNet/IP Yes
DX200 INFORM III EtherNet/IP (RI-EIP) Yes (FSearch/Search)
YRC1000 INFORM III v4.x+ EtherNet/IP (RI-EIP) Yes

The Fronius TPS communicates weld setpoints and process feedback (current, voltage, wire-feed speed, arc length) over the fieldbus. The robot's TCP and the welding TCP are not the same: the robot TCP is the kinematic reference point used for motion planning; the welding TCP is the wire-stick-out / arc-strike point. Both must be calibrated and both drift independently.

2. Root Causes of TCP Drift on Welding Cells

TCP drift is rarely a robot-kinematic problem on an MA1400 of this age. The dominant causes in a welding cell are:

  1. Tool crash / mechanical shock — torch collision with fixture or trunnion causes a 0.5–10 mm immediate shift in the tool frame.
  2. Wire-feed-side mechanical play — torch neck, contact-tip holder, and anti-collision clamp loosening.
  3. Trunnion positioner repeatability — if the part moves between stations, the perceived TCP shifts even if the robot TCP is perfect.
  4. Battery-backed encoder loss — dead batteries on the robot or trunnion absolute encoders cause absolute position memory to be re-initialised, shifting the home position of one or more axes.
  5. Programmed tool frame incorrect — the operator may have selected a wrong UTOOL at job start, or the frame may be corrupt in non-volatile memory.
  6. Thermal growth — wrist axis (R, B, T) growth of 0.02–0.05 mm is typical after 30 minutes of arc-on time on a cold-start cell.
Battery failure is the most-overlooked root cause. Yaskawa controllers (DX200, FS100, NX100) hold absolute-encoder data, I/O configuration, and tool frames in battery-backed SRAM (CN1 / CPS-31F battery packs on the YPU board, typically 3.6 V lithium, 5–8 year life). When batteries drop below ~2.8 V, the controller throws 4107 "ABSOLUTE DATA LOST" at power-up, and depending on the configured start mode the axes may re-home — but the home offset, which contains the tool-frame origin, may be lost. TCP that "moved 5–6 mm" after a power cycle is a classic battery-failure signature, not a calibration error.

3. Five-Point TCP Calibration Verification (DX200 / YRC1000)

Yaskawa's standard verification is the five-point (or seven-point) TCP calibration. The procedure is the same in INFORM II and INFORM III; only the menu path differs.

  1. Jog the robot to a fixed reference pin or "TCP master" — typically a 4 mm dowel pinned into a calibrated fixture on the work table.
  2. From the teach pendant: SETUP → TOOL → TCP CALIBRATION → 5-POINT (or in INFORM II, ROBOT → TOOL → CAL).
  3. Touch the reference pin with the same TCP point (typically the wire stick-out) at five distinct wrist orientations, holding SHIFT+RECORD at each.
  4. The controller solves a least-squares sphere and reports the X/Y/Z offset of the tool frame from the flange face, and an orientation error (roll/pitch/yaw). Spec tolerance: ±0.5 mm positional, ±0.5° angular. Values outside this band indicate either a calibration error or genuine mechanical drift.
  5. Press CALCULATE to update the tool frame. Press SAVE to commit to non-volatile memory. The controller writes the new frame to the UTOOL[n] register and the corresponding SRAM page.

5–6 mm X/Y errors reported in the field are roughly 60× worse than the spec tolerance and indicate one of three things: (a) the operator touched different physical points (e.g., the torch body instead of the wire tip) at different orientations; (b) the absolute encoders lost position; (c) a controller PCB fault. If the value is consistent across re-calibration, suspect (b) or (c). If it varies, suspect (a).

4. In-Process TCP Verification Without Stopping the Cell

The core engineering requirement: monitor TCP repeatability while the cell is running, without breaking into the cycle. Three methods are field-proven, in increasing order of cost.

4.1 Method 1: Touch-sense (wire touch) on a fixed reference

A grounded reference pin is hard-wired to a robot digital input (typically IN[#1] or one of the first eight RI inputs). The robot runs a periodic search job at the start of each cycle:

! INFORM III search job
SET B000 0                ! mismatch counter
MOVL V=50.0 P[1]         ! approach
ARCSEN ON                 ! arc-sense enable
SRCH X=REF_PIN, IO=IN[1], Z=-25.0
ARCSEN OFF
GETS B001 $PX             ! record touch position
SUB B001 P[1].X           ! delta from taught
ABS B001
IF B001 GT 0.5 THEN
   B000 = B000 + 1
   DO[101] = ON           ! flag cell for service
ENDIF
END

The job touches the reference, computes the delta from the taught position, and increments a counter. After N cycles, the operator reviews B000 and the logged positions. Threshold of 0.5 mm matches the calibration spec tolerance; alarm at 1.0 mm.

4.2 Method 2: Yaskawa Motoeye (laser crosshair)

The Motoeye is a Yaskawa accessory consisting of two fibre-optic emitter/receiver pairs mounted at 90° on a fixed bracket. The two beams form a crosshair; the robot TCP passes through the crosshair and the beam-break events are wired into two rapid inputs. The search job records the X and Y position where each beam breaks and computes the offset from the centre of the cross.

Advantages over touch-sense: no wire consumption, no spatter, no tip wear, sub-millisecond response. The Motoeye is rated to ±0.1 mm position resolution on a properly mounted bracket; bracket-to-robot base repeatability is the dominant error, so the bracket must be dowel-pinned to a rigid structure.

4.3 Method 3: Arc-sense and arc-voltage feedback

For welding applications, the Fronius TPS reports arc voltage and current at 10 Hz over the fieldbus. A drift in wire stick-out shows up as a shift in average arc voltage at constant wire-feed speed. A 1 mm change in stick-out shifts the voltage by approximately 0.5–1.0 V on a synergic short-arc process. A historical log of arc voltage per cycle, compared against a reference window, is a low-cost secondary indicator of TCP or stick-out drift. Threshold: ±2 V from the reference window over 10 cycles is a service flag.

5. Trunnion Synchronization and Master/Slave Positioners

If the cell uses a 2-axis trunnion (e.g., Yaskawa MW2-500 or 2-axis headstock/tailstock) the part moves during the cycle. The TCP repeatability of the workpiece in the world frame depends on the combined repeatability of the robot and the positioner.

Trunnion axes on DX200 are added as group 2 (and group 3 for the third axis) and tracked in $PMOVE_C and PR[20–29] for the positioner coordinate frame. The robot's TCP target is computed via coordinated motion (COORD ON or MOVL V=... with $MGRP set to 0/1) so that the torch tracks the joint as it rotates.

A trunnion-related TCP shift symptom is inconsistency between stations: station 1 welds are good, station 2 welds burn back. The likely cause is a worn tailstock centre, a loose servo coupling, or a positioner absolute-encoder battery low. Repeat the trunnion home-return and check absolute-encoder battery voltage at the positioner's encoder-distribution box.

Trunnion fault-vs-symptom matrix
Symptom Robot TCP Trunnion home Positioner encoder batt Mechanical
Drift only when part rotates OK OK Check (<3.0 V) Check coupling
Drift in single station only Check N/A N/A Check fixture
Drift proportional to angle OK Re-home Check Check backlash
Random shift every cycle Check UTOOL OK OK Check cables

6. Statistical Monitoring: SPC on TCP Delta

For production cells running 200+ welds per shift, the in-process touch-sense or Motoeye data should be logged to a database (e.g., the cell's MQTT bridge, the DX200's FTP file output, or a SCADA tag) and trended. Recommended control limits:

  • X-bar chart of TCP X delta, control limits ±3σ from the reference mean. Recalibrate at the first out-of-control point.
  • R-chart of within-cycle repeatability (max–min of 3 search hits per cycle). Upper control limit = 0.3 mm; investigate upward trend as a leading indicator of tool wear.
  • CUSUM on Y delta to detect a 0.1 mm/min drift (typical of thermal wrist growth). Set CUSUM threshold K=0.5σ, H=4σ.

7. Controller Stuck in German / Maintenance Mode Recovery

A controller that comes up in German after a power-down, enters maintenance mode, and has no servo enable is almost always one of two faults:

  1. Battery-backed SRAM lost configuration — controller defaulted to the OEM (German) language pack and to a maintenance-mode boot flag. The battery low-alarm was probably active in the alarm log before the outage.
  2. Servo enable chain broken — the E-stop, safety relay, or door interlock is open. Maintenance mode intentionally disables servo power until the chain is verified.

Recovery procedure (DX200/FS100):

  1. Verify the E-stop circuit is closed: DI[1] (E-STOP) ON, DI[2] (SAFETY RELAY) ON, DI[3] (DOOR) ON. Inputs visible on the teach pendant I/O monitor.
  2. Power down. Replace the SRAM batteries (typically 2× BR-2/3A on the YPU PCB, or 1× CPS-31F on later boards). Wait 5 minutes for capacitor discharge.
  3. Power up holding PREV+NEXT on the pendant to enter the maintenance menu.
  4. Switch language: navigate to SPRACHE or hold SHIFT+language key (left-shift + ENG on a Yaskawa pendant switches the active language file). The DX200 supports English, German, French, Italian, Spanish, Japanese, Chinese, Korean, and Portuguese as standard.
  5. Boot to PLAYBACK or TEACH mode, not MAINTENANCE. MAINTENANCE disables servo power by design.
  6. If all user programs are lost, they can be deleted from the FILE → JOB → DELETE menu. Restored from a backup or CF card via FILE → LOAD if the backup is available.
Alarm 4107 (Absolute data lost) and Alarm 4110 (Battery low) are the two alarms that should never be cleared without addressing the underlying condition. Clearing 4107 and not re-homing the robot destroys absolute position data and the tool frame. See the Yaskawa controller operator manual set for the full alarm list and the prescribed recovery sequence for each.

8. Fronius TPS Welding-Process Consistency

Weld consistency issues attributed to the robot TCP are frequently, in practice, a Fronius power-source consistency issue. Before re-calibrating the robot, verify:

  1. Wire-feed consistency: MENU → PROCESS → WIRE FEED on the TPS. The drive-roll pressure gauge should read 0.3–0.5 MPa on a 4-roll drive. A slipping or crushed drive roll causes ±5% WFS variation, indistinguishable from a TCP shift in the arc-voltage trace.
  2. Contact-tip wear: tip ID grows by 0.1–0.2 mm over 200–400 tips on a 1.0 mm steel wire. A worn tip changes the stick-out, which the robot does not compensate for.
  3. Gas flow: 12–18 L/min for steel, 14–22 for stainless/aluminum, depending on nozzle. A low flow looks like a TCP issue (porosity) but isn't.
  4. Synergic job number: confirm the job loaded on the TPS (e.g., JOB 142) matches the job set in the robot program. Mismatched jobs are a common source of "mysteriously" shifted parameters after a service visit.
  5. RobotInterface (RI) handshake: RI/ROB LED on the TPS front panel must be solid green. A flashing LED indicates the fieldbus handshake is broken and the TPS is in fallback to its local panel settings, which may differ from the robot's setpoints.

9. Recommended Monitoring Architecture

A reference architecture for an in-process TCP monitoring cell:

  1. Motoeye crosshair fixture, dowel-pinned to the cell base, two rapid inputs (e.g., RI[1] and RI[2]) wired through the fieldbus I/O block.
  2. Search job runs at the start of every cycle, writes the X/Y delta to B[100]/B[101] and a timestamp to D[200].
  3. DX200 FTP file output writes TCP_LOG.CSV to a network share every 10 minutes.
  4. An off-the-shelf historian (Ignition, FactoryTalk, WinCC) trends the file. SPC alarms (X-bar/R/CUSUM) are computed in the historian.
  5. Threshold breach publishes an MQTT message to a maintenance dashboard, alerting a cell phone.

10. Verification Checklist After a TCP Service Event

After any service event — torch replacement, collision recovery, controller reset, battery swap — verify the cell with this checklist before releasing to production:

  1. Five-point TCP calibration: X/Y/Z within ±0.5 mm of last-known-good value, orientation within ±0.5°.
  2. Touch-sense reference run, 10 cycles: max delta ≤ 0.3 mm X/Y.
  3. Trunnion home-return: all positioner axes return to within ±0.05° of the taught home (visible in $DATOR position screen).
  4. Test weld on a coupon: cross-section macro shows full penetration, no porosity, profile within AWS D1.1 / ISO 3834 tolerance for the joint.
  5. Alarms 4107/4110/4201 clear with no recurrence over 10 power cycles.
  6. Backup of all .JBI (job), .CND (condition), and .PRM (parameter) files to a dated network share.

11. Quick-Reference Fault Matrix

Symptom → root cause → first action
Symptom Most likely cause First action
TCP 5–6 mm off after power cycle Battery / absolute data lost (alarm 4107) Check battery voltage, re-home, re-teach tool
TCP drifts during shift Thermal wrist growth or torch clamp loose Log delta, re-torque torch clamp to spec
Controller boots in foreign language SRAM config lost, defaulted to OEM locale Switch language, replace batteries, restore config
No servo enable after maintenance Safety circuit open or maintenance mode active Check DI[1..3], exit maintenance mode
Weld consistency poor, robot TCP checks OK Fronius job mismatch, tip wear, gas flow Verify TPS job, replace tip, check flow
Drift only on trunnion station 2 Positioner home or encoder battery Re-home positioner, check encoder battery

FAQ

What is the Yaskawa MA1400's factory repeatability spec?

±0.08 mm pose repeatability per the official MA1400 datasheet. Any field-measured TCP delta greater than ±0.3 mm that is repeatable indicates a real problem, not measurement noise.

How do I run a five-point TCP calibration on a DX200?

From the teach pendant, navigate to SETUP → TOOL → TCP CALIBRATION, touch the reference point with the same TCP at five wrist orientations, press CALCULATE to solve, and SAVE to commit. Spec tolerance is ±0.5 mm and ±0.5°.

My DX200 booted in German after a power outage. How do I switch to English?

Replace the SRAM batteries first, then hold SHIFT + the English language key on the pendant. The active language file swaps without a reboot. Confirm by checking SYSTEM → LANGUAGE.

Can I check TCP repeatability without stopping the robot?

Yes. Run a periodic touch-sense job on a fixed reference pin wired to a rapid input, or install a Yaskawa Motoeye laser crosshair. The job computes the delta from the taught reference and increments a counter; thresholds of 0.5 mm flag the cell for service.

What Fronius TPS parameter is most sensitive to TCP changes?

Arc voltage at constant wire-feed speed. A 1 mm change in wire stick-out (which a TCP shift of equal magnitude would cause) shifts arc voltage by 0.5–1.0 V on a short-arc process. Log voltage per cycle and alarm at ±2 V from a 10-cycle reference window.

Back to blog