Siemens SINUMERIK codes
Siemens SINUMERIKServo/AxisIntermediate20-40 minutes

12589

Siemens 840D 12589 - Channel block motion synchronous action: variable not

Channel block motion synchronous action: variable not

The modal ID in motion synchronous action must not be formed by means of an on-line variable. Examples: ID=$AC_MARKER[1] WHEN $a_in[1] == 1 DO $AC_MARKER[1] = $AC_MARKER[1]+1 This can be corrected in the following way: R10 = $AC_MARKER[1] ID=R10 WHEN $a_in[1] == 1 DO $AC_MARKER[1] = $AC_MARKER[1]+1

Safety

  • Refer to Siemens documentation
  • Ensure qualified technician performs repairs

Common Causes

  • Modal ID in motion synchronous action defined directly using an online variable instead of intermediate register
  • Attempting to use $AC_MARKER array element directly in ID parameter without assignment to local variable first
  • Using input variable ($a_in) or other online variables directly in motion synchronous ID definition
  • Incorrect syntax in WHEN/DO clause referencing online variables for modal identification
  • Program structure attempting dynamic ID assignment that violates motion synchronous action constraints

Troubleshooting Steps

  1. 1Locate the motion synchronous action block in channel %1 at block %2 and identify the variable %3 being used in the ID parameter
  2. 2Review the syntax: if ID parameter directly references online variables like $AC_MARKER[], $a_in[], or similar, this is the root cause
  3. 3Replace direct online variable reference with intermediate register assignment - assign the online variable value to a local register (R-parameter) before the synchronous action block
  4. 4Update the ID parameter to reference the intermediate register instead of the online variable, maintaining the WHEN/DO clause logic unchanged
  5. 5Verify corrected syntax matches the pattern: R-register assignment, then ID=R-register reference, followed by WHEN/DO conditions

Seeing Multiple Alarms?

Seeing another alarm with this one? Enter the code.

Get machine-aware diagnosis

AxisMD logs alarms against your actual machines, tracks patterns, and gives AI context your manual doesn't have.

Start free

Was this guide helpful?

Always verify with your machine manual or a certified technician before performing service procedures.