--- a/etherlab/etherlab.py Wed Jan 30 23:46:58 2013 +0100
+++ b/etherlab/etherlab.py Thu Feb 07 00:59:50 2013 +0100
@@ -202,9 +202,17 @@
DEFAULT_PUBLISH = " *(__CIA402Node_%(location)s.%(name)s) = __CIA402Node_%(location)s.axis->%(name)s;"
+ {"description": ("ErrorCode", 0x603F, 0x00, "UINT", "I"), {"description": ("DigitalInputs", 0x60FD, 0x00, "UDINT", "I"),
+ {"description": ("DigitalOutputs", 0x60FE, 0x00, "UDINT", "Q"), EXTRA_NODE_VARIABLES_DICT = dict([("Enable" + name, value) for name, value in EXTRA_NODE_VARIABLES])
--- a/etherlab/plc_cia402node.c Wed Jan 30 23:46:58 2013 +0100
+++ b/etherlab/plc_cia402node.c Thu Feb 07 00:59:50 2013 +0100
@@ -118,6 +118,8 @@
// Default variables retrieve
+ __CIA402Node_%(location)s.axis->CommunicationReady = *(__CIA402Node_%(location)s.StatusWord) != 0; + __CIA402Node_%(location)s.axis->ReadyForPowerOn = __CIA402Node_%(location)s.state == __SwitchedOn || __OperationEnabled; __CIA402Node_%(location)s.axis->PowerFeedback = __CIA402Node_%(location)s.state == __OperationEnabled;
__CIA402Node_%(location)s.axis->ActualPosition = AXIS_UNIT_TO_USER_UNIT(*(__CIA402Node_%(location)s.ActualPosition));
__CIA402Node_%(location)s.axis->ActualVelocity = AXIS_UNIT_TO_USER_UNIT(*(__CIA402Node_%(location)s.ActualVelocity));