Correct parameters only in "nichtokay".
authorBenjamin Braatz <bb@bbraatz.eu>
Wed, 2 Feb 2022 19:00:02 +0000 (20:00 +0100)
committerBenjamin Braatz <bb@bbraatz.eu>
Wed, 2 Feb 2022 19:00:02 +0000 (20:00 +0100)
conf.json
gmodbus/hitachi.py
schaltschrank/config.py

index 6045733fe044b58ee170d2c5aeeac03f34cacf27..f01492f8ae05519856003cb67da30a7e9d98f8fb 100644 (file)
--- a/conf.json
+++ b/conf.json
@@ -3,9 +3,9 @@
       "type": "output",
       "address": 56,
       "pins":
-      [ [ "A1-1", "T1-1", "Motorschütz" ], [ "A1-2", "T1-2" ],
+      [ [ "A1-1", "T1-1", "Motorschütz" ], [ "A1-2", "T1-2", "Steckdosen 400V" ],
         [ "A1-3", "T1-3", "Zentralschmierung" ], [ "A1-4", "T1-4", "Ölpumpe" ],
-        [ "A1-5", "T1-5" ], [ "A1-6", "T1-6", "Notaus Schaltschrank Lampe" ],
+        [ "A1-5", "T1-5", "Steckdosen 230V" ], [ "A1-6", "T1-6", "Notaus Schaltschrank Lampe" ],
         [ "A1-7", "T1-7", "Lüfter Schaltschrank" ], [ "A1-8", "T1-8", "Notaus Maschine Lampe" ] ] },
     { "name": "A2",
       "type": "output",
@@ -20,9 +20,9 @@
       "address": 32,
       "interrupt pin": 4,
       "pins":
-      [ [ "E1-1", "T1-18", "Motorschütz Rückmeldung" ], [ "E1-2", "T1-19" ],
+      [ [ "E1-1", "T1-18", "Motorschütz Rückmeldung" ], [ "E1-2", "T1-19", "Steckdosen 400V Rückmeldung" ],
         [ "E1-3", "T1-20", "Zentralschmierung Rückmeldung" ], [ "E1-4", "T1-21", "Ölpumpe Rückmeldung" ],
-        [ "E1-5", "T1-22" ], [ "E1-6", "T1-23", "Notaus Schaltschrank" ],
+        [ "E1-5", "T1-22", "Steckdosen 230V Rückmeldung" ], [ "E1-6", "T1-23", "Notaus Schaltschrank" ],
         [ "E1-7", "T1-24" ], [ "E1-8", "T1-25", "Notaus Maschine" ] ] },
     { "name": "E2",
       "type": "input",
@@ -58,7 +58,7 @@
         "Schwungrad", "Öldruck", "Bruchplatte Einzug" ] } ],
   "modbus":
   { "serial device": "/dev/serial0",
-    "baudrate": 9600,
+    "baudrate": 19200,
     "slave id": 1 },
   "statemachines":
   [ { "name": "Notaus Schaltschrank",
               "value": false,
               "state": "aus" } ] } },
       "init": "aus" },
+    { "name": "Steckdosen",
+      "states":
+      { "aus":
+       { "commands":
+         [ { "name": "setpin",
+             "pin": "Steckdosen 400V",
+             "value": false },
+           { "name": "setpin",
+             "pin": "Steckdosen 230V",
+             "value": false } ],
+         "events":
+         [ { "name": "pinstate",
+             "pin": "Notaus",
+             "value": true,
+             "state": "an" } ] },
+       "an":
+       { "commands":
+         [ { "name": "setpin",
+             "pin": "Steckdosen 400V",
+             "value": true },
+           { "name": "setpin",
+             "pin": "Steckdosen 230V",
+             "value": true } ],
+         "events":
+         [ { "name": "pinstate",
+             "pin": "Notaus",
+             "value": false,
+             "state": "aus" } ] } },
+      "init": "an" },
     { "name": "Motor",
       "states":
       { "notaus":
           [ { "name": "pinstate",
               "pin": "Notaus",
               "value": true,
-              "state": "nichtokay" } ] },
+              "state": "nichtokay" },
+            { "name": "pinstate",
+              "pin": "Stop",
+              "value": true,
+              "state": "notaus" } ] },
         "nichtokay":
         { "commands":
           [ { "name": "motorstop" },
+            { "name": "motorcheck" },
             { "name": "setpin",
               "pin": "Motorschütz",
               "value": true },
               "pin": "Notaus",
               "value": false,
               "state": "notaus" },
+            { "name": "pinstate",
+              "pin": "Stop",
+              "value": true,
+              "state": "nichtokay" },
             { "name": "pinstate",
               "pin": "Okay",
               "value": true,
               "pin": "Notaus",
               "value": false,
               "state": "notaus" },
+            { "name": "pinstate",
+              "pin": "Stop",
+              "value": true,
+              "state": "tippenokay" },
             { "name": "pinstate",
               "pin": "Okay",
               "value": false,
               "pin": "Notaus",
               "value": false,
               "state": "notaus" },
+            { "name": "pinstate",
+              "pin": "Stop",
+              "value": true,
+              "state": "tippenokay" },
             { "name": "pinstate",
               "pin": "Okay",
               "value": false,
               "state": "nichtokay" },
             { "name": "tippenfertig",
-              "state": "tippenokay" },
-            { "name": "pinstate",
-              "pin": "Stop",
-              "value": true,
               "state": "tippenokay" } ] },
         "tippenrück":
         { "commands":
               "pin": "Notaus",
               "value": false,
               "state": "notaus" },
+            { "name": "pinstate",
+              "pin": "Stop",
+              "value": true,
+              "state": "tippenokay" },
             { "name": "pinstate",
               "pin": "Okay",
               "value": false,
               "state": "nichtokay" },
             { "name": "tippenfertig",
-              "state": "tippenokay" },
-            { "name": "pinstate",
-              "pin": "Stop",
-              "value": true,
               "state": "tippenokay" } ] },
         "dauerokay":
         { "commands":
               "pin": "Notaus",
               "value": false,
               "state": "notaus" },
+            { "name": "pinstate",
+              "pin": "Stop",
+              "value": true,
+              "state": "dauerokay" },
             { "name": "pinstate",
               "pin": "Okay",
               "value": false,
               "pin": "Notaus",
               "value": false,
               "state": "notaus" },
-            { "name": "pinstate",
-              "pin": "Okay",
-              "value": false,
-              "state": "nichtokay" },
             { "name": "pinstate",
               "pin": "Stop",
               "value": true,
               "state": "dauerokay" },
+            { "name": "pinstate",
+              "pin": "Okay",
+              "value": false,
+              "state": "nichtokay" },
             { "name": "pinstate",
               "pin": "Prozesskraftüberwachung aus",
               "value": false,
index 02678cd805127a9c7b138ab46c34ef13f38ef491..7088cfdbbb5846901cde4646c5476df15ea236ec 100644 (file)
@@ -12,8 +12,8 @@ class SJP1Fu():
     self.__protocol = DatatypesProtocol(client, SJP1FU_COILS, SJP1FU_REGISTERS)
 
   registers = [12015, 12220, 12222, 13015, 13021, 13022, 13023, 13024, 13026,
-               13027, 13101, 13210, 13221, 14140, 15102, 15103, 15110, 15112,
-               15114, 15116, 15118]
+               13027, 13101, 13210, 13221, 14140, 14501, 15102, 15103, 15110,
+               15112, 15114, 15116, 15118]
 
   async def check_parameters(self) -> None:
     for register in self.registers:
@@ -269,6 +269,24 @@ SJP1FU_REGISTERS = {
       },
     },
   },
+  14501: {
+    'code': 'CF-01',
+    'name': 'Communication transmission spped selection',
+    'rw': 'rw',
+    'type': 'enum',
+    'conf': {
+      'values': {
+        3: '2400 bps',
+        4: '4800 bps',
+        5: '9600 bps',
+        6: '19200 bps',
+        7: '38400 bps',
+        8: '57600 bps',
+        9: '76800 bps',
+        10: '115200 bps',
+      },
+    },
+  },
   15102: {
     'code': 'Hb102',
     'name': 'First IM motor capacity selection',
index 59e281d27965c1597d7807c667605d946ec90d1f..75f671f80530698dc1fe84f480947b92c64d80cb 100644 (file)
@@ -70,9 +70,10 @@ async def fu_handler(queues, fu):
         event = await in_queue.get()
         if event['name'] == 'motorstop':
             await fu.stop_inverter()
-            await fu.correct_parameters()
             for out_queue in queues:
                 await out_queue.put({'name': 'motoraus'})
+        elif event['name'] == 'motorcheck':
+            await fu.correct_parameters()
         elif event['name'] == 'dauervor':
             if previous != 'dauervor':
                 await asyncio.sleep(1)