孟令鑫 1 rok pred
rodič
commit
f563f98145

+ 4 - 4
aarch64/pjisuv/common/config/c_cloud.go

@@ -16,9 +16,10 @@ type platform struct {
 }
 
 type host struct {
-	Name   string   `yaml:"name"`
-	Ip     string   `yaml:"ip"`
-	Topics []string `yaml:"topics"`
+	Name       string   `yaml:"name"`
+	Ip         string   `yaml:"ip"`
+	Topics     []string `yaml:"topics"`
+	RecordEnvs []string `yaml:"record-envs"`
 }
 type ros struct {
 	MasterAddress string   `yaml:"master-address"`
@@ -45,7 +46,6 @@ type cloudConfig struct {
 	TriggersDir           string    `yaml:"triggers-dir"`
 	TcpPort               string    `yaml:"tcp-port"`
 	RpcPort               string    `yaml:"rpc-port"`
-	RecordEnvs            []string  `yaml:"record-envs"`
 	Triggers              []trigger `yaml:"triggers"`
 	Hosts                 []host    `yaml:"hosts"`
 	Ros                   ros       `yaml:"ros"`

+ 4 - 2
aarch64/pjisuv/common/config/yaml/cloud-config-pjisuv95.yaml

@@ -16,8 +16,6 @@ triggers-dir: /mnt/media/sda1/cicv-data-closedloop/triggers/
 time-window-send-gap: 6
 tcp-port: 12340
 rpc-port: 12341
-record-envs:
-  - ""
 ros:
   master-address: 192.168.1.102:11311
   nodes:
@@ -35,12 +33,16 @@ hosts:
       - /cicv_amr_trajectory #  /planner_s4
       - /pj_control_pub # /control
   #      - /data_read
+    record-envs:
+      - ""
   - name: node2
     ip: 192.168.1.103
     topics:
       - /points_concat  # /lidar_pretreatment
       - /tpperception # /sensorfusion
       - /cicv_location  # /ins
+    record-envs:
+      - ""
 triggers:
   - label: rapidaccel
     topics:

+ 1 - 1
aarch64/pjisuv/common/config/yaml/local-config-pjisuv95-soc1.yaml

@@ -1,5 +1,5 @@
 node:
-  name: master
+  name: node1
   ip: 192.168.1.102
 # 数据闭环平台参数
 equipment-no: pjisuv95

+ 1 - 1
aarch64/pjisuv/common/config/yaml/local-config-pjisuv95-soc2.yaml

@@ -1,5 +1,5 @@
 node:
-  name: slave
+  name: node2
   ip: 192.168.1.103
 # 数据闭环平台参数
 equipment-no: pjisuv95

+ 9 - 1
aarch64/pjisuv/common/service/rosbag_record.go

@@ -39,7 +39,15 @@ func BagRecord(nodeName string) {
 		_ = util.CreateParentDir(config.CloudConfig.BagDataDir)
 		systemEnv := os.Environ()
 		c_log.GlobalLogger.Info("系统环境变量为:", systemEnv)
-		cmd, err := util.ExecuteWithEnvAndDirAsync(os.Environ(), config.CloudConfig.BagDataDir, "rosbag", command...)
+		// 获取 record 命令环境变量
+		var recordEnv []string
+		for _, host := range config.CloudConfig.Hosts {
+			if host.Name == config.LocalConfig.Node.Name {
+				recordEnv = host.RecordEnvs
+				break
+			}
+		}
+		cmd, err := util.ExecuteWithEnvAndDirAsync(recordEnv, config.CloudConfig.BagDataDir, "rosbag", command...)
 		if err != nil {
 			c_log.GlobalLogger.Error("执行record命令", command, "出错:", err)
 			continue