q 2 gadi atpakaļ
vecāks
revīzija
eae9ea0c80

+ 80 - 0
config/jinfeng/belt_101.json

@@ -0,0 +1,80 @@
+{
+    "sys_id": "belt_101",
+    "sys_name": "101皮带",
+    "sys_path": "1\\1\\9",
+    "sys_point": {
+      "key":"JF.Device1.PD101.PD101_BP1_YXFK",
+      "name":"运行状态",
+      "state":"",
+      "common":[
+        {
+          "key":"JF.Device1.PD101.PD101_SD",
+          "name":"速度",
+          "unit":"m/s",
+          "val":""
+        }
+      ],
+      "electric_parameter":[
+        {
+          "name": "轴承温度",
+          "value_list": [
+            {
+              "key": "JF.Device1.PD101.PD101_DJ1_ZC",
+              "unit": "℃",
+              "val": ""
+            },
+            {
+              "key": "JF.Device1.PD101.PD101_DJ2_ZC",
+              "unit": "℃",
+              "val": ""
+            }
+          ]
+        },
+        {
+          "name": "绕组温度",
+          "value_list": [
+            {
+              "key": "JF.Device1.PD101.PD101_DJ1_RZ",
+              "unit": "℃",
+              "val": ""
+            },
+            {
+              "key": "JF.Device1.PD101.PD101_DJ2_RZ",
+              "unit": "℃",
+              "val": ""
+            }
+          ]
+        },
+        {
+          "name": "滚筒温度",
+          "value_list": [
+            {
+              "key": "JF.Device1.PD101.PD101_GT1_RZ",
+              "unit": "℃",
+              "val": ""
+            },
+            {
+              "key": "JF.Device1.PD101.PD101_GT2_WD",
+              "unit": "℃",
+              "val": ""
+            }
+          ]
+        },
+        {
+          "name": "变频电流",
+          "value_list": [
+            {
+              "key": "JF.Device1.PD101.PD101_BP1_DL",
+              "unit": "A",
+              "val": ""
+            },
+            {
+              "key": "JF.Device1.PD101.PD101_BP2_DL",
+              "unit": "A",
+              "val": ""
+            }
+          ]
+        }
+      ]
+    }
+  }

+ 13 - 53
config/jinfeng/belt_102.json

@@ -1,14 +1,14 @@
 {
-    "sys_id": "belt_101",
-    "sys_name": "101皮带",
+    "sys_id": "belt_102",
+    "sys_name": "102皮带",
     "sys_path": "1\\1\\9",
     "sys_point": {
-      "key":"JF.Device1.PD101.PD101_BP1_YXFK",
+      "key":"JF.Device1.PD102.PD102_BP1_YXFK",
       "name":"运行状态",
       "state":"",
       "common":[
         {
-          "key":"JF.Device1.PD101.PD101_SD",
+          "key":"JF.Device1.PD101.PD102_SD",
           "name":"速度",
           "unit":"m/s",
           "val":""
@@ -19,22 +19,12 @@
           "name": "前轴温度",
           "value_list": [
             {
-              "key": "",
+              "key": "JF.Device1.PD102.PD102_DJ1_QZW",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
+              "key": "JF.Device1.PD102.PD102_DJ2_QZW",
               "unit": "℃",
               "val": ""
             }
@@ -44,47 +34,27 @@
           "name": "后轴温度",
           "value_list": [
             {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
+              "key": "JF.Device1.PD102.PD102_DJ1_HZW",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
+              "key": "JF.Device1.PD102.PD102_DJ2_HZW",
               "unit": "℃",
               "val": ""
             }
           ]
         },
         {
-          "name": "绕组温度",
+          "name": "定子温度",
           "value_list": [
             {
-              "key": "",
+              "key": "JF.Device1.PD102.PD102_DJ1_DZW",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
+              "key": "JF.Device1.PD102.PD102_DJ1_DZW",
               "unit": "℃",
               "val": ""
             }
@@ -94,22 +64,12 @@
           "name": "变频电流",
           "value_list": [
             {
-              "key": "",
-              "unit": "A",
-              "val": ""
-            },
-            {
-              "key": "",
-              "unit": "A",
-              "val": ""
-            },
-            {
-              "key": "",
+              "key": "JF.Device1.PD102.PD102_BP1_DL",
               "unit": "A",
               "val": ""
             },
             {
-              "key": "",
+              "key": "JF.Device1.PD102.PD102_BP1_DL",
               "unit": "A",
               "val": ""
             }

+ 13 - 33
config/jinfeng/belt_north.json

@@ -1,6 +1,6 @@
 {
     "sys_id": "belt_101",
-    "sys_name": "101皮带",
+    "sys_name": "北翼皮带",
     "sys_path": "1\\1\\9",
     "sys_point": {
       "key":"JF.Device1.PD101.PD101_BP1_YXFK",
@@ -19,22 +19,17 @@
           "name": "前轴温度",
           "value_list": [
             {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ1_QZW",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ2_QZW",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ3_QZW",
               "unit": "℃",
               "val": ""
             }
@@ -44,22 +39,17 @@
           "name": "后轴温度",
           "value_list": [
             {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ1_HZW",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ2_HZW",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ3_HZW",
               "unit": "℃",
               "val": ""
             }
@@ -69,22 +59,17 @@
           "name": "绕组温度",
           "value_list": [
             {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ1_RZW1",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ2_RZW1",
               "unit": "℃",
               "val": ""
             },
             {
-              "key": "",
-              "unit": "℃",
-              "val": ""
-            },
-            {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_DJ3_RZW1",
               "unit": "℃",
               "val": ""
             }
@@ -94,22 +79,17 @@
           "name": "变频电流",
           "value_list": [
             {
-              "key": "",
-              "unit": "A",
-              "val": ""
-            },
-            {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_BP1_DL",
               "unit": "A",
               "val": ""
             },
             {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_BP2_DL",
               "unit": "A",
               "val": ""
             },
             {
-              "key": "",
+              "key": "JF.Device1.PDBY.PDBY_BP3_DL",
               "unit": "A",
               "val": ""
             }

+ 107 - 0
jf_belt_101.py

@@ -0,0 +1,107 @@
+import os
+from sys import path
+currentPath = os.getcwd().replace('\\','/')    # 获取当前路径
+path.append(currentPath)
+
+import paho.mqtt.client as mqtt
+import mqtt_client as mc
+import config_info_model as md
+import redis
+import time, datetime
+import json
+
+class jf_belt_101():
+
+    sys_key = 'jinfeng'
+    sys_name = 'belt_101.json'
+    point_dict = {}
+    jdata = None
+    cf = md.configInfoModel(sys_key, sys_name)
+    client = None
+
+
+    def __init__(self):
+        self.init_mqtt()
+
+    def init_mqtt(self):
+        # print(self.cf.ip)
+        self.client = mqtt.Client(f"{self.sys_key}_{self.sys_name}")
+        self.client.username_pw_set(self.cf.username, password=self.cf.password)
+        # self.client.on_connect = self.on_connect    #连接broker时broker响应的回调
+        self.client.on_message = self.on_message    #接收到订阅消息时的回调
+        self.subscribe_update_topic()
+
+    def subscribe_update_topic(self):
+        self.client.connect(self.cf.ip, 1883, 600)    #连接到broker
+        self.client.subscribe("1/1/10", 0)
+        self.client.loop_forever()
+
+    # 回调数据
+    def on_message(self, client, userdata, msg):
+        data = msg.payload
+        jsonStr = data.decode('utf-8')
+        jsonObj = json.loads(jsonStr)
+        data = jsonObj['values']
+        data_dict = {}
+        for i in range(len(data)):
+            v = data[i]
+            data_dict[v['code']] = v['v']
+        self.point_dict = data_dict
+        self.run()
+
+        timeStamp = jsonObj['timestamp'] / 1000
+        times = datetime.datetime.fromtimestamp(timeStamp)
+        print(times)
+
+    # 获取点位
+    def get_base_data(self):
+
+        # 读取最终json格式数据
+        self.jdata = self.cf.get_json(self.sys_key, self.sys_name)
+        jdata_s = self.jdata['sys_point']
+        return jdata_s
+
+    # 数据处理
+    def data_handle(self, data):
+        comm = data['common']
+        elec = data['electric_parameter']
+        data['state'] = self.point_dict[data['key']]
+
+        for i in range(len(comm)):
+            ck = comm[i]
+            k = ck[i]['key']
+            comm[i]['val'] = self.point_dict[k]
+            data['common'][i] = ck
+
+        for i in range(len(elec)):
+            vl = elec[i]['value_list']
+            for j in range(len(vl)):
+                k = vl[j]['key']
+                vl[j]['val'] = self.point_dict[k]
+            data['electric_parameter'][i]['value_list'] = vl
+
+        self.jdata['sys_point'] = data
+
+    # 存入redis
+    def save_redis(self):
+        config = self.cf.get_conf()
+        try:
+            redis_conf = config['redis_conf']
+            redis_ip = redis_conf['ip']
+            pool = redis.ConnectionPool(host=redis_ip, password='')
+            redis_conn = redis.Redis(connection_pool=pool)
+            # 接口数据存入redis
+            redis_key = f"{self.sys_key}_{self.sys_name}"
+            json_str = json.dumps(self.jdata)
+            redis_conn.set(str(redis_key), json_str)
+        except BaseException as e:
+            print(e)
+            print("异常,redis连接错误!")
+
+    def run(self):
+        data = self.get_base_data()
+        self.data_handle(data)
+        self.save_redis()
+
+if __name__ == "__main__":
+    obj = jf_belt_101()

+ 3 - 3
jf_belt_102.py

@@ -10,10 +10,10 @@ import redis
 import time, datetime
 import json
 
-class jf_belt_101():
+class jf_belt_102():
 
     sys_key = 'jinfeng'
-    sys_name = 'belt_101.json'
+    sys_name = 'belt_102.json'
     point_dict = {}
     jdata = None
     cf = md.configInfoModel(sys_key, sys_name)
@@ -104,4 +104,4 @@ class jf_belt_101():
         self.save_redis()
 
 if __name__ == "__main__":
-    obj = jf_belt_101()
+    obj = jf_belt_102()

+ 3 - 3
jf_belt_north.py

@@ -10,10 +10,10 @@ import redis
 import time, datetime
 import json
 
-class jf_belt_102():
+class jf_belt_north():
 
     sys_key = 'jinfeng'
-    sys_name = 'belt_102.json'
+    sys_name = 'belt_north.json'
     point_dict = {}
     jdata = None
     cf = md.configInfoModel(sys_key, sys_name)
@@ -104,4 +104,4 @@ class jf_belt_102():
         self.save_redis()
 
 if __name__ == "__main__":
-    obj = jf_belt_102()
+    obj = jf_belt_north()