Browse Source

Motherboarddata

Martin Kunz 5 years ago
parent
commit
1a88c47268

+ 9 - 0
src/main/java/at/acdp/urweb/sclient/SecondaryClient.java

@@ -55,6 +55,9 @@ public class SecondaryClient {
             case PackageType.TOOL_DATA:
                 readToolData(di, size);
                 break;
+            case PackageType.MASTERBOARD_DATA:
+                readMasterBoardData(di, size);
+                break;
             case PackageType.CARTESIAN_INFO:
                 readCartesianInfo(di, size);
                 break;
@@ -93,6 +96,12 @@ public class SecondaryClient {
         }
     }
 
+    private MasterBoardData readMasterBoardData(CountDataInputStream di, int size) throws IOException {
+        MasterBoardData mb=new MasterBoardData();
+        mb.read(di, size);
+        return mb;
+    }
+
     private ToolData readToolData(CountDataInputStream di, int size) throws IOException {
         ToolData td=new ToolData();
         td.read(di, size);

+ 64 - 0
src/main/java/at/acdp/urweb/sclient/data/MasterBoardData.java

@@ -0,0 +1,64 @@
+package at.acdp.urweb.sclient.data;
+
+import at.acdp.urweb.CountDataInputStream;
+
+import java.io.IOException;
+
+public class MasterBoardData implements IRead {
+    int		digitalInputBits;
+    int		digitalOutputBits;
+    int		analogInputRange0;
+    int		analogInputRange1;
+    double		analogInput0;
+    double		analogInput1;
+    byte		analogOutputDomain0;
+    byte		analogOutputDomain1;
+    double		analogOutput0;
+    double		analogOutput1;
+    float		masterboardTemperature;
+    float		robotVoltage48V;
+    float		robotCurrent;
+    float		masterIOCurrent;
+    int		safetymode;
+    int		inReducedMode;
+    byte		euromap67Installed;
+    int		euromapInputBits;
+    int		euromapOutputBits;
+    float		euromapVoltage;
+    float		euromapCurrent;
+    int      internal;
+    int		operationalModeSelectorInput;
+    int		threePositionEnablingDeviceInput;
+
+    @Override
+    public void read(CountDataInputStream di, int size) throws IOException {
+
+        digitalInputBits=di.readInt();
+        digitalOutputBits=di.readInt();
+        analogInputRange0=di.readUnsignedByte();
+        analogInputRange1=di.readUnsignedByte();
+        analogInput0=di.readDouble();
+        analogInput1=di.readDouble();
+
+        analogOutputDomain0=di.readByte();
+        analogOutputDomain1=di.readByte();
+        analogOutput0=di.readDouble();
+        analogInput1=di.readDouble();
+        masterboardTemperature=di.readFloat();
+        robotVoltage48V=di.readFloat();
+        robotCurrent=di.readFloat();
+        masterIOCurrent=di.readFloat();
+        safetymode=di.readByte();
+        inReducedMode=di.readByte();
+        euromap67Installed=di.readByte();
+        if(euromap67Installed>0) {
+            euromapInputBits = di.readInt();
+            euromapOutputBits = di.readInt();
+            euromapVoltage = di.readFloat();
+            euromapCurrent = di.readFloat();
+        }
+        internal=di.readInt();
+        operationalModeSelectorInput=di.readUnsignedByte();
+        threePositionEnablingDeviceInput=di.readUnsignedByte();
+    }
+}