Structure of an AS File
AS File Sections: Reference & Restore Guide
What each block of a Kawasaki AS save contains, where a given parameter lives, and which sections are safe to download (overwrite) onto an existing robot.
How to read this
A full AS save bundles every data class the controller holds, each under its own .MARKER. When restoring from a file you can pick which markers to send. "Download to robot" means overwrite: the section in the file replaces what is on the controller. Each section below is tagged by how risky that overwrite is.
- APPLICATION – your job: programs, points, variables, tools. Safe to move and overwrite on the same robot.
- CELL CONFIG – integration: I/O mapping, network, panels. Overwrite deliberately; must match the target cell.
- ARM-SPECIFIC – calibration / safety tied to this physical arm. Do not overwrite onto a different robot.
- STATS / META – usage counters or editor notes. Normally leave the target's own values in place.
Header manifest – Stats / Meta
The leading .* comment lines. Not a sendable section: a record of firmware at save time. Check it before any restore to confirm version compatibility.
- Contains: AS group, servo group, kernel/driver/RFS build IDs, CPU board type, CF card ID, Cubic-S CPU-A/CPU-B firmware versions and CRC pairs.
- Look for: === AS GROUP ===, === SERVO GROUP ===, === Cubic-S ===, Cpu board type
- Download? Not transmittable. Reference only.
.NETCONF / .NETCONF2 – Cell Config
- Contains: network configuration. NETCONF = primary interface (IP, host name, subnet, gateways). NETCONF2 = second NIC inside the controller.
- Look for: .NETCONF 192.168.0.2 ..., .NETCONF2 172.17.1.12 ...
- Download? Only when you intend to set the target's IP addressing. Sending overwrites the controller's network identity, which can drop your connection.
.ROBOTDATA1 – Arm-Specific
Machine and calibration data unique to this physical arm and its encoders. This is the highest-risk section to overwrite across robots.
- Contains: model / axis configuration, zeroing (encoder home), software motion limits, accel/decel scaling, endless-axis, signal-spec sizing, application setup, and deflection/vibration compensation matrices.
- Look for: ZROBOT.TYPE, ZAXCONFIG, ZZERO, ZULIMIT, ZLLIMIT, ZSETACCEL, ZSETDECEL, ZSIGSPEC, ZSETAPPLI, ZRIGIDITY, RIGIDITY_MAT_*, ZWCOMPK, ENDLESS_POS
- Download? Same arm only. Restores zeroing, limits, and tuning for the robot it came from. Never push onto a different physical robot.
Zeroing lives here. ZZERO is the per-axis encoder home. Overwriting .ROBOTDATA1 rewrites zeroing and can shift every taught point. It mirrors the Zeroing values in .CBSDATA on Cubic-S machines.
NOTE: This is also where HOME1 lives. So when migrating to a new robot arm (and not transfering .ROBOTDATA1) you will need to reteach the HOME1 position in the home menu.
.OPE_INFO1 – Stats / Meta
- Contains: operation and maintenance telemetry. Controller-on / servo-on time, motor-on count, e-stop count, brake count, power consumption, per-joint travel and distance, backlight hours, parts counters, the M_ maintenance-baseline mirror, and hour meter.
- Look for: OPEINFO, CONT_TIM, SERV_TIM, MTON_CNT, ESTP_CNT, BRKE_CNT, DIST_DJT, HOUR_MTR, M_*
- Download? Usually no. Sending overwrites the target's own accumulated hours and cycle counters. Restore only if deliberately transferring a machine's history.
.SYSDATA – Cell Config
Controller behavior and cell integration. Defines how the controller talks to the outside world.
- Contains: dedicated I/O signal assignments, environment settings, check-mode specs, condition-signal masks, conveyor-tracking parameters, AD ranges, arm I/O mapping, base.
- Look for: DEFSIG_I, DEFSIG_O, EXT_MTRON, EXT_ERR_RESET, EXT_CYC_START, EXT_RPS, ENV_DATA, CHECK_SPEC, CND_*, CV* (conveyor), ARM_OX_*, BASE
- Download? When cloning cell integration onto a matching station. Overwrites all external-signal mapping and system options, so the target must share the same I/O scheme.
.CONDITION – Cell Config
- Contains: operating-state snapshot and default motion parameters. AS/servo version stamps, error-log count, manual/check speed, program and instruction speed/accel/decel defaults, monitor speed, external-axis ratios, continuous-path interpolation speeds.
- Look for: AS_VER, SV_VER, ELOG_NUM, MAN_SPEED, CHK_SPEED, MON_SPEED, PRG_SPEED, PRG_ACCEL, PRG_DECEL, EXT_R1, CINT_*
- Download? Optional. Useful to restore default speed/accuracy state; rarely required for a program-only move.
.AUXDATA – Application
- Contains: block-teaching auxiliary element data (the *.au class). Tool transforms, robot start limits, and the speed / accuracy / timer / clamp / work element tables that block-taught steps reference by number.
- Look for: FTOOL1 ... FTOOL31, ROB_START_LIM, ROB_START_LIM1, plus speed/accuracy/timer element tables
- Download? Send with the application if programs rely on block-taught tools or element numbers. Skip if the job is pure AS-language with no block-teach dependencies.
.SIG_COMMENT – Cell Config
- Contains: I/O signal name and comment strings (the text labels shown next to inputs and outputs). Empty in some files.
- Look for: .SIG_COMMENT, then signal label strings
- Download? Cosmetic but cell-specific. Send alongside .SYSDATA when cloning a station so labels match the I/O map.
.CBSDATA – Arm-Specific
The Cubic-S safety parameter set, the on-board mirror that CS-Configurator manages and that the safety-signature CRC covers.
- Contains: Cubic-S version, encoder type, baud, error mask, per-axis motion type, upper/lower limits, equivalent radius, degree-to-bit scaling, max speed, max decel time, offset, and zeroing.
- Look for: .CBSDATA, Version, UpperLimit, LowerLimit, MaxSpeed, Offset, Zeroing, EquivalentRadius, DegreeToBit
- Download? Same arm only, with caution. Its Zeroing/Offset match .ROBOTDATA1 and are arm-specific. Changing it triggers the Cubic-S CRC / safety-signature reconfirmation.
Safety data. Treat as safety-critical. After any change, re-register the safety signature (Aux 0820) and validate, per the Cubic-S setup procedure.
.IDE_CMT – Stats / Meta
- Contains: offline-editor (KIDE / K-ROSET) project metadata, not controller data. Project name, save history, inspection watch list, connection info, program and TRANS lists.
- Look for: @@@ PROJECT @@@, @@@ PROJECTNAME @@@, @@@ HISTORY @@@, @@@ CONNECTION @@@
- Download? Harmless commentary. No functional effect on the robot.
.INTER_PANEL_* – Cell Config
- Contains: teach-pendant interface-panel definitions (the *.if class). Button data, titles, and the color table.
- Look for: .INTER_PANEL_D, .INTER_PANEL_TITLE, .INTER_PANEL_COLOR_D
- Download? Send when replicating the operator panel layout on a matching station.
.PROGRAM – Application
- Contains: the AS programs themselves, motion and logic code, one block per program. The #n after the parentheses is an internal save attribute (commonly a cycle counter) with no effect on the code.
- Look for: .PROGRAM name() #n, then LMOVE / JMOVE / SIGNAL / SWAIT / IF SIG / CALL
- Download? Core of an application move. Note: loading a program name that already exists in memory errors out and aborts, so clear or rename conflicts first.
.TRANS – Application
- Contains: transformation (Cartesian XYZOAT) pose variables, taught locations and offsets.
- Look for: .TRANS, then name X Y Z O A T (e.g. pick_location, above_pick, lane_offset)
- Download? Send with the application. On overwrite, existing same-named pose variables are replaced without warning.
.JOINTS – Application
- Contains: precision / joint-space point variables (the #-prefixed names), each with its joint angles.
- Look for: .JOINTS, then #name JT1 ... JT6 (e.g. #phome)
- Download? Send with the application. Joint points depend on correct zeroing to land where intended.
.REALS – Application
- Contains: global real variables, including signal-number bindings, speeds, tool weights and centers of gravity, and tracking distances.
- Look for: .REALS, then in.* = , out.* = , full_tool, full_cog.z, track_speed, prog_speed
- Download? Send with the application. Watch the in.*/out.* bindings: their values are signal numbers that must match the target cell's I/O.
Parameter to Section Lookup
Where to find a given parameter or behavior.
| If you are looking for... | Section | Class |
| Zeroing / encoder home (ZZERO) | .ROBOTDATA1 | Arm |
| Software joint limits (ZULIMIT / ZLLIMIT) | .ROBOTDATA1 | Arm |
| Robot model / axis config | .ROBOTDATA1 | Arm |
| Deflection / rigidity compensation | .ROBOTDATA1 | Arm |
| Cubic-S limits / zeroing / offset | .CBSDATA | Arm |
| Dedicated I/O signals (motor-on, reset, RPS) | .SYSDATA | Cell |
| Conveyor / tracking parameters | .SYSDATA | Cell |
| Environment / check-mode options | .SYSDATA | Cell |
| Default program speed / accel / accuracy | .CONDITION | Cell |
| Manual / check / monitor speed | .CONDITION | Cell |
| Block-teach tools (FTOOL*) / element tables | .AUXDATA | App |
| IP address / network | .NETCONF / .NETCONF2 | Cell |
| I/O signal labels / comments | .SIG_COMMENT | Cell |
| Operator panel buttons / colors | .INTER_PANEL_* | Cell |
| Hour meter / cycle / e-stop counters | .OPE_INFO1 | Stats |
| Firmware / version manifest | Header .* lines | Meta |
| Motion / logic code | .PROGRAM | App |
| Cartesian taught points / offsets | .TRANS | App |
| Joint-space precision points | .JOINTS | App |
| Real variables, signal bindings, weights, speeds | .REALS | App |
Restore Scenarios
Common decisions about what to download onto an existing robot.
| Goal | Send | Leave alone |
| Update the application on the same arm (program changes, new points) | .PROGRAM, .TRANS, .JOINTS, .REALS | .ROBOTDATA1, .CBSDATA, .OPE_INFO1, .NETCONF* |
| Migrate a job to a different physical arm (same model, same cell) | Application sections, plus .SYSDATA, .SIG_COMMENT, .INTER_PANEL_* if the cell matches | .ROBOTDATA1, .CBSDATA (keep the target arm's calibration), .OPE_INFO1 |
| Full clone / replace a controller for the same robot | Everything, after confirming firmware in the header matches | Nothing, but verify zeroing/home pose after restore |
| Re-deploy cell integration only (I/O remap, panels) | .SYSDATA, .SIG_COMMENT, .INTER_PANEL_* | Application and arm sections |
| Restore zeroing on the original arm after it was lost | .ROBOTDATA1 (and .CBSDATA on Cubic-S machines) | Everything else, unless also affected |
Rule of thumb: application moves freely. Cell config must match the target station. Arm-specific calibration and safety stay with the physical robot they belong to. Usage stats stay on the controller that earned them. After sending anything that touches .ROBOTDATA1 or .CBSDATA, verify the zeroing/home pose before running.
Section names and tokens come from an RS020N E-series save and may vary slightly by controller and firmware. Verify against the Operation Manual (Save/Load) and AS Language Reference before destructive restores.