孟令鑫 пре 1 година
родитељ
комит
eb3a8c3f3b
4 измењених фајлова са 35 додато и 27 уклоњено
  1. 9 0
      common/util/u_time.go
  2. 15 11
      pji/common/cfg/ros_cfg.go
  3. 0 6
      pji/common/util/utils.go
  4. 11 10
      pji/master/package/svc/produce_window.go

+ 9 - 0
common/util/u_time.go

@@ -0,0 +1,9 @@
+package util
+
+import "time"
+
+func GetNowTimeCustom() string {
+	currentTime := time.Now()
+	formattedTime := currentTime.Format("2006-01-02-15-04-05")
+	return formattedTime
+}

+ 15 - 11
pji/common/cfg/ros_cfg.go

@@ -2,23 +2,27 @@ package cfg
 
 import (
 	"cicv-data-closedloop/common/config/c_log"
-	"cicv-data-closedloop/pji/common/cutil"
+	"cicv-data-closedloop/common/util"
 	"github.com/bluenviron/goroslib/v2"
-	"os"
+	"time"
 )
 
 var RosNode *goroslib.Node
 
 func InitRosConfig() {
-	c_log.GlobalLogger.Info("初始化RosNode - 开始")
 	var err error
-	RosNode, err = goroslib.NewNode(goroslib.NodeConf{
-		Name:          "node" + cutil.GetNowTimeCustom(),
-		MasterAddress: CloudConfig.Ros.MasterAddress,
-	})
-	if err != nil {
-		c_log.GlobalLogger.Error("初始化RosNode - 失败:", err)
-		os.Exit(-1)
+	c_log.GlobalLogger.Info("初始化RosNode - 开始")
+	for {
+		time.Sleep(time.Duration(2) * time.Second)
+		if RosNode, err = goroslib.NewNode(goroslib.NodeConf{
+			Name:          "node" + util.GetNowTimeCustom(),
+			MasterAddress: CloudConfig.Ros.MasterAddress,
+		}); err != nil {
+			c_log.GlobalLogger.Error("初始化RosNode - 进行中:", err)
+			continue
+		}
+		c_log.GlobalLogger.Info("初始化RosNode - 成功:", CloudConfig.Ros.MasterAddress)
+		break
 	}
-	c_log.GlobalLogger.Info("初始化RosNode - 成功:", CloudConfig.Ros.MasterAddress)
+
 }

+ 0 - 6
pji/common/util/utils.go

@@ -64,12 +64,6 @@ func GetBagTime(bagName string) string {
 	return s2
 }
 
-func GetNowTimeCustom() string {
-	currentTime := time.Now()
-	formattedTime := currentTime.Format("2006-01-02-15-04-05")
-	return formattedTime
-}
-
 func TimeCustomChange(originalTimeStr string, number int) string {
 	var newTimeStr string
 	// 解析时间字符串

+ 11 - 10
pji/master/package/svc/produce_window.go

@@ -2,6 +2,7 @@ package svc
 
 import (
 	"cicv-data-closedloop/common/config/c_log"
+	commonUtil "cicv-data-closedloop/common/util"
 	"cicv-data-closedloop/pji/common/cfg"
 	commonEntity "cicv-data-closedloop/pji/common/ent"
 	"cicv-data-closedloop/pji/common/global"
@@ -62,8 +63,8 @@ func PrepareTimeWindowProducerQueue() {
 			//c_log.GlobalLogger.Info("话题", masterConfig.TopicOfObstacleDetection, "接收到数据", data)
 			subscriber1Mutex.Lock()
 			{
-				faultHappenTime := util.GetNowTimeCustom() // 获取当前故障发生时间
-				lastTimeWindow := util.GetLastTimeWindow() // 获取最后一个时间窗口
+				faultHappenTime := commonUtil.GetNowTimeCustom() // 获取当前故障发生时间
+				lastTimeWindow := util.GetLastTimeWindow()       // 获取最后一个时间窗口
 				var faultLabel string
 				for _, f := range masterConfig.RuleOfObstacleDetection {
 					faultLabel = f(data)
@@ -88,8 +89,8 @@ func PrepareTimeWindowProducerQueue() {
 			//c_log.GlobalLogger.Info("话题", masterConfig.TopicOfSysInfo, "接收到数据", data)
 			subscriber2Mutex.Lock()
 			{
-				faultHappenTime := util.GetNowTimeCustom() // 获取当前故障发生时间
-				lastTimeWindow := util.GetLastTimeWindow() // 获取最后一个时间窗口
+				faultHappenTime := commonUtil.GetNowTimeCustom() // 获取当前故障发生时间
+				lastTimeWindow := util.GetLastTimeWindow()       // 获取最后一个时间窗口
 				var faultLabel string
 				for _, f := range masterConfig.RuleOfSysInfo {
 					faultLabel = f(data)
@@ -114,8 +115,8 @@ func PrepareTimeWindowProducerQueue() {
 			//c_log.GlobalLogger.Info("话题", masterConfig.TopicOfLocateInfo, "接收到数据", data)
 			subscriber3Mutex.Lock()
 			{
-				faultHappenTime := util.GetNowTimeCustom() // 获取当前故障发生时间
-				lastTimeWindow := util.GetLastTimeWindow() // 获取最后一个时间窗口
+				faultHappenTime := commonUtil.GetNowTimeCustom() // 获取当前故障发生时间
+				lastTimeWindow := util.GetLastTimeWindow()       // 获取最后一个时间窗口
 				var faultLabel string
 				for _, f := range masterConfig.RuleOfLocateInfo {
 					faultLabel = f(data)
@@ -140,8 +141,8 @@ func PrepareTimeWindowProducerQueue() {
 			//c_log.GlobalLogger.Info("话题", masterConfig.TopicOfImu, "接收到数据", data)
 			subscriber4Mutex.Lock()
 			{
-				faultHappenTime := util.GetNowTimeCustom() // 获取当前故障发生时间
-				lastTimeWindow := util.GetLastTimeWindow() // 获取最后一个时间窗口
+				faultHappenTime := commonUtil.GetNowTimeCustom() // 获取当前故障发生时间
+				lastTimeWindow := util.GetLastTimeWindow()       // 获取最后一个时间窗口
 				var faultLabel string
 				for _, f := range masterConfig.RuleOfImu {
 					faultLabel = f(data)
@@ -166,8 +167,8 @@ func PrepareTimeWindowProducerQueue() {
 			//c_log.GlobalLogger.Info("话题", masterConfig.TopicOfDiagnostics, "接收到数据", data)
 			subscriber5Mutex.Lock()
 			{
-				faultHappenTime := util.GetNowTimeCustom() // 获取当前故障发生时间
-				lastTimeWindow := util.GetLastTimeWindow() // 获取最后一个时间窗口
+				faultHappenTime := commonUtil.GetNowTimeCustom() // 获取当前故障发生时间
+				lastTimeWindow := util.GetLastTimeWindow()       // 获取最后一个时间窗口
 				var faultLabel string
 				for _, f := range masterConfig.RuleOfDiagnostics {
 					faultLabel = f(data)