From f4c6c982a275fcdead46a7bdb5704fc39b4f1bb0 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 01 九月 2023 16:46:14 +0800
Subject: [PATCH] 接收工艺模型新增消息,plc读取时间可配置

---
 pkg/plc/plc4x.go |   37 +++++++++++++++++++------------------
 1 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/pkg/plc/plc4x.go b/pkg/plc/plc4x.go
index d38ac67..7e386e6 100644
--- a/pkg/plc/plc4x.go
+++ b/pkg/plc/plc4x.go
@@ -1,6 +1,7 @@
 package plc
 
 import (
+	"apsClient/pkg/logx"
 	"context"
 	"errors"
 	"fmt"
@@ -46,8 +47,8 @@
 			return conn, nil
 		}
 	}
-	// 鍒涘缓涓�涓笂涓嬫枃锛屽苟璁剧疆 5 绉掕秴鏃�
-	ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
+	// 鍒涘缓涓�涓笂涓嬫枃锛屽苟璁剧疆 3 绉掕秴鏃�
+	ctx, cancel := context.WithTimeout(context.Background(), 3*time.Second)
 	defer cancel()
 	conn, err := NewGetModbusConnection(ctx, ipAddr)
 	if err != nil {
@@ -89,24 +90,24 @@
 	// 璇绘ā寮�
 	readRequest, err := connection.ReadRequestBuilder().AddTagAddress(tag, tagAddress).Build()
 	if err != nil {
-		fmt.Printf("preparing read-request:%s\n", err.Error())
+		logx.Errorf("preparing read-request:%s\n", err.Error())
 		return nil, err
 	}
 
 	// 鎵ц
 	readResult := <-readRequest.Execute()
 	if err := readResult.GetErr(); err != nil {
-		fmt.Printf("execting read-request:%s\n", err.Error())
+		logx.Errorf("execting read-request:%s\n", err.Error())
 		return nil, err
 	}
 
 	// 鍒ゆ柇鍝嶅簲鐮佹槸鍚︽纭�
-	if readResult.GetResponse().GetResponseCode("tag") != apiModel.PlcResponseCode_OK {
-		fmt.Printf("error an non-ok return code: %s", readResult.GetResponse().GetResponseCode("tag").GetName())
+	if readResult.GetResponse().GetResponseCode(tag) != apiModel.PlcResponseCode_OK {
+		logx.Errorf("error an non-ok return code: %s", readResult.GetResponse().GetResponseCode(tag).GetName())
 		return nil, nil
 	}
 
-	value := readResult.GetResponse().GetValue("tag")
+	value := readResult.GetResponse().GetValue(tag)
 
 	return value.GetRaw(), err
 
@@ -119,24 +120,24 @@
 	// 璇绘ā寮�
 	readRequest, err := connection.ReadRequestBuilder().AddTagAddress(tag, tagAddress).Build()
 	if err != nil {
-		fmt.Printf("preparing read-request:%s\n", err.Error())
+		logx.Errorf("preparing read-request:%s\n", err.Error())
 		return nil, err
 	}
 
 	// 鎵ц
 	readResult := <-readRequest.Execute()
 	if err := readResult.GetErr(); err != nil {
-		fmt.Printf("execting read-request:%s\n", err.Error())
+		logx.Errorf("execting read-request:%s\n", err.Error())
 		return nil, err
 	}
 
 	// 鍒ゆ柇鍝嶅簲鐮佹槸鍚︽纭�
-	if readResult.GetResponse().GetResponseCode("tag") != apiModel.PlcResponseCode_OK {
-		fmt.Printf("error an non-ok return code: %s", readResult.GetResponse().GetResponseCode("tag").GetName())
-		return nil, errors.New("error  code: " + readResult.GetResponse().GetResponseCode("tag").GetName())
+	if readResult.GetResponse().GetResponseCode(tag) != apiModel.PlcResponseCode_OK {
+		logx.Errorf("error an non-ok return code: %s", readResult.GetResponse().GetResponseCode(tag).GetName())
+		return nil, errors.New("error  code: " + readResult.GetResponse().GetResponseCode(tag).GetName())
 	}
 
-	value := readResult.GetResponse().GetValue("tag")
+	value := readResult.GetResponse().GetValue(tag)
 
 	var result []byte
 
@@ -162,21 +163,21 @@
 	// 鍐欐ā寮�
 	writeRequest, err := connection.WriteRequestBuilder().AddTagAddress(tag, tagAddress, value).Build()
 	if err != nil {
-		fmt.Printf("preparing read-request:%s\n", err.Error())
+		logx.Errorf("preparing read-request:%s\n", err.Error())
 		return "", err
 	}
 
 	// 鎵ц
 	writeResult := <-writeRequest.Execute()
 	if err := writeResult.GetErr(); err != nil {
-		fmt.Printf("execting read-request:%s\n", err.Error())
+		logx.Errorf("execting read-request:%s\n", err.Error())
 		return "", err
 	}
 
 	// 鍒ゆ柇鍝嶅簲鐮佹槸鍚︽纭�
-	if writeResult.GetResponse().GetResponseCode("tag") != apiModel.PlcResponseCode_OK {
-		fmt.Printf("error an non-ok return code: %s", writeResult.GetResponse().GetResponseCode("tag").GetName())
-		return "", errors.New("error  code: " + writeResult.GetResponse().GetResponseCode("tag").GetName())
+	if writeResult.GetResponse().GetResponseCode(tag) != apiModel.PlcResponseCode_OK {
+		logx.Errorf("error an non-ok return code: %s", writeResult.GetResponse().GetResponseCode(tag).GetName())
+		return "", errors.New("error  code: " + writeResult.GetResponse().GetResponseCode(tag).GetName())
 	}
 
 	result := writeResult.GetResponse().String()

--
Gitblit v1.8.0