etherlab/plc_ds402node.c
changeset 2036 7c31fab22c74
parent 2035 1d113faf4433
child 2041 ce3727171207
--- a/etherlab/plc_ds402node.c	Thu Feb 23 15:48:19 2012 +0100
+++ b/etherlab/plc_ds402node.c	Thu Feb 23 23:34:40 2012 +0100
@@ -131,5 +131,10 @@
 	    	break;
 	}
 
-	*(__DS402Node_%(location)s.TargetPosition) = (IEC_DINT)(__DS402Node_%(location)s.axis->PositionSetPoint * __DS402Node_%(location)s.axis->RatioNumerator / __DS402Node_%(location)s.axis->RatioDenominator);
+	if (__DS402Node_%(location)s.axis->CSP && *(__DS402Node_%(location)s.ModesOfOperationDisplay) == 0x08) {
+		*(__DS402Node_%(location)s.TargetPosition) = (IEC_DINT)(__DS402Node_%(location)s.axis->PositionSetPoint * __DS402Node_%(location)s.axis->RatioNumerator / __DS402Node_%(location)s.axis->RatioDenominator);
+	}
+	else {
+		*(__DS402Node_%(location)s.TargetPosition) = *(__DS402Node_%(location)s.ActualPosition);
+	}
 }