AXY:Shadow Axis Concept

From SoftMC-Wiki
Revision as of 13:25, 8 January 2012 by Miborich (talk | contribs) (Implementation Details)
Jump to: navigation, search

Shadow Axis Concept

This article describes shadow axes from the motion point of view.

AXY;Shadow Axis Concept.png

On the picture above there are:

  • three different(separated) SERCOS rings
  • two MC controllers each connected to two SERCOS rings
  • first SERCOS ring connects Drive#1 to MC#1
  • second SERCOS ring connects MC#1 with MC#2
  • third SERCOS ring connects MC#2 with Drive #2


First MC has:

  • one axis (Axis) connected to the first SERCOS ring to a Drive#1
  • second axis (Remote) connected via second SERCOS ring to MC#2


Second MC has:

  • one axis (Shadow master) connected to the second SERCOS ring to a MC#1
  • second axis (Shadow slave) connected via third SERCOS ring to Drive#2


Virtual Connection consists of:

  • Remote axis on MC#1 running on S3net.master
  • Shadow master on MC#2 running on S3net.slave
  • Connection between S3net.master and S3net.slave swaps pcmd with pfb and drive status (ds) with drive control word (dcw)


Shadow axis pair consist of:

  • Shadow master
  • Shadow slave

With the following swapping of variables:

Shadow Master direction Shadow Slave
pfb pcmd
pcmd pfb
vfb vcmd
vcmd vfb
drive status drive control word
drive control word drive status


New Syntax

We are adding new option (value=10) to the existing options of the <axis>.slave values. Using the <axis>.MasterSource property for defining master axis.

<shadow slave axis>.MasterSource = <shadow master axis>.pcmd
<shadow slave axis>.slave = 10
NOTE-Info.svgNOTE
Shadow slave axis can be only enabled if both <shadow master axis> is enabled (sending enabled drive status) and <shadow slave axis>.en = 1
NOTE-Info.svgNOTE
Both shadow master or slave axis does not accept any motion command (MOVE, JOG, ....) while they are in a shadow-relationship.
NOTE-Info.svgNOTE
Both shadow master or slave axis can not belong to a group.
NOTE-Info.svgNOTE
Shadow master can not be a slave axis. (i.e its slave property must be 0)
NOTE-Info.svgNOTE
Remember that axes with lower elementid number are called before. This can influence additional propagation delay.

Implementation Details

  • Assigning <axis>.slave = 10 both <axis> and <axis>.MasterSource become pair of master-slave shadow axes.
  • During <axis>.slave = 10 assignment all the conditions of master-slave shadow pair are checked.
  • Rearranging RTK priorities is skipped.

See Also:

Virtual Axis