孟令鑫 преди 1 година
родител
ревизия
640e6b7599

+ 10 - 4
aarch64/kinglong/common/config/c_cloud.go

@@ -15,12 +15,18 @@ type platform struct {
 	UrlTask       string `yaml:"url-task"`
 }
 
+type rosbagStruct struct {
+	Path string   `yaml:"path"`
+	Envs []string `yaml:"envs"`
+}
+
 type hostStruct struct {
-	Name       string   `yaml:"name"`
-	Ip         string   `yaml:"ip"`
-	Topics     []string `yaml:"topics"`
-	RecordEnvs []string `yaml:"record-envs"`
+	Name   string       `yaml:"name"`
+	Ip     string       `yaml:"ip"`
+	Topics []string     `yaml:"topics"`
+	Rosbag rosbagStruct `yaml:"rosbag"`
 }
+
 type ros struct {
 	MasterAddress string   `yaml:"master-address"`
 	Nodes         []string `yaml:"nodes"`

+ 1 - 1
aarch64/kinglong/common/config/c_local.go

@@ -18,7 +18,7 @@ type restartCmd struct {
 }
 
 type localConfig struct {
-	Node                 node       `yaml:"node"`                    // 获取oss配置的url
+	Node                 node       `yaml:"node"`                    // 节点信息
 	UrlGetOssConfig      string     `yaml:"url-get-oss-config"`      // 获取oss配置的url
 	OssBasePrefix        string     `yaml:"oss-base-prefix"`         // 云端配置文件的位置
 	EquipmentNo          string     `yaml:"equipment-no"`            // 当前设备的编号

+ 7 - 5
aarch64/kinglong/common/config/c_ros.go

@@ -8,8 +8,9 @@ import (
 )
 
 var (
-	RosNode *goroslib.Node
-	RosEnv  []string
+	RosNode    *goroslib.Node
+	RosbagPath string
+	RosbagEnvs []string
 )
 
 func InitRosConfig() {
@@ -24,13 +25,14 @@ func InitRosConfig() {
 		os.Exit(-1)
 	}
 	c_log.GlobalLogger.Info("初始化RosNode - 成功:", CloudConfig.Ros.MasterAddress)
-	// 获取 record 命令环境变量
+	// 获取 rosbag 命令路径和环境变量
 	for _, host := range CloudConfig.Hosts {
 		if host.Name == LocalConfig.Node.Name {
-			RosEnv = host.RecordEnvs
+			RosbagPath = host.Rosbag.Path
+			RosbagEnvs = host.Rosbag.Envs
 			break
 		}
 	}
-	c_log.GlobalLogger.Info("ros 环境变量为:", RosEnv)
+	c_log.GlobalLogger.Infof("rosbag 命令路径为:%v,环境变量为:%v", RosbagPath, RosbagEnvs)
 
 }

+ 10 - 4
aarch64/kinglong/common/config/yaml/cloud-config-v2253.yaml

@@ -53,6 +53,10 @@ ros:
 hosts:
   - name: node1
     ip: 192.168.1.102
+    rosbag:
+      envs:
+        - ""
+      path: "/opt/ros/melodic/bin/rosbag"
     topics:
       - /camera_image
       - /cam_res
@@ -79,10 +83,14 @@ hosts:
       - /AutoModeStatus
       - /heartbeat_info
       - /data_read
-    record-envs:
-      - ""
+
   - name: node2
     ip: 192.168.1.103
+    rosbag:
+      envs:
+        - ""
+      path: "/opt/ros/melodic/bin/rosbag"
+    rosbag-path:
     topics:
       - /ch128x1/lslidar_main
       - /ch64_mid/lslidar_mid
@@ -94,8 +102,6 @@ hosts:
       - /points_concat
       - /tpperception
       - /tpperception/hmi
-    record-envs:
-      - ""
 triggers:
   - label: rapidaccel
     topics:

+ 2 - 0
aarch64/kinglong/common/config/yaml/cloud-config-v2304.yaml

@@ -52,6 +52,7 @@ ros:
 hosts:
   - name: node1
     ip: 192.168.1.102
+    rosbag-path: "/opt/ros/melodic/bin/rosbag"
     topics:
       - /AutoModeStatus
       - /cam_objects
@@ -79,6 +80,7 @@ hosts:
       - /vehicle_info
   - name: node2
     ip: 192.168.1.103
+    rosbag-path: "/opt/ros/melodic/bin/rosbag"
     topics:
       - /ch128x1/lslidar_main
       - /ch64_left/lslidar_left

+ 1 - 1
aarch64/kinglong/common/service/rosbag_record.go

@@ -36,7 +36,7 @@ func BagRecord(nodeName string) {
 		// 不在此处压缩,因为 rosbag filter 时会报错。在上传到oss之前压缩即可。
 		// 包名格式:2023-11-15-17-35-20_0.bag
 		_ = util.CreateParentDir(config.CloudConfig.BagDataDir)
-		cmd, err := util.ExecuteWithEnvAndDirAsync(config.RosEnv, config.CloudConfig.BagDataDir, "rosbag", command...)
+		cmd, err := util.ExecuteWithEnvAndDirAsync(config.RosbagEnvs, config.CloudConfig.BagDataDir, config.RosbagPath, command...)
 		if err != nil {
 			c_log.GlobalLogger.Error("执行record命令", command, "出错:", err)
 			continue

+ 2 - 2
aarch64/kinglong/common/service/rosbag_upload.go

@@ -70,7 +70,7 @@ outLoop:
 				oldName := bag
 				newName := bag + "_filter"
 				filterCommand := []string{"filter", oldName, newName, "\"" + strings.Join(topicsFilterSlice, " or ") + "\""}
-				_, output, err := commonUtil.ExecuteWithEnvSync(commonConfig.RosEnv, "rosbag", filterCommand...)
+				_, output, err := commonUtil.ExecuteWithEnvSync(commonConfig.RosbagEnvs, commonConfig.RosbagPath, filterCommand...)
 				c_log.GlobalLogger.Info("正在过滤中,【FaultTime】=", currentTimeWindow.FaultTime, "【Label】=", currentTimeWindow.Labels, ",进度", i+1, "/", bagNumber, "。")
 				if err != nil {
 					c_log.GlobalLogger.Errorf("filter 命令执行出错【命令】=%v,【输出】=%v,【err】=%v", filterCommand, output, err)
@@ -92,7 +92,7 @@ outLoop:
 			oldName := bag
 			compressCommand := []string{"compress", "--bz2", oldName}
 			c_log.GlobalLogger.Info("正在压缩中,【FaultTime】=", currentTimeWindow.FaultTime, "【Label】=", currentTimeWindow.Labels, ",进度", i+1, "/", bagNumber, "。")
-			if _, output, err := commonUtil.ExecuteWithEnvSync(commonConfig.RosEnv, "rosbag", compressCommand...); err != nil {
+			if _, output, err := commonUtil.ExecuteWithEnvSync(commonConfig.RosbagEnvs, commonConfig.RosbagPath, compressCommand...); err != nil {
 				c_log.GlobalLogger.Errorf("compress 命令执行出错【命令】=%v,【输出】=%v,【err】=%v", compressCommand, output, err)
 				continue
 			}

+ 10 - 4
aarch64/pji/common/config/c_cloud.go

@@ -15,11 +15,18 @@ type platform struct {
 	UrlTask       string `yaml:"url-task"`
 }
 
+type rosbagStruct struct {
+	Path string   `yaml:"path"`
+	Envs []string `yaml:"envs"`
+}
+
 type hostStruct 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"`
+	Rosbag rosbagStruct `yaml:"rosbag"`
 }
+
 type ros struct {
 	MasterAddress string   `yaml:"master-address"`
 	Nodes         []string `yaml:"nodes"`
@@ -43,7 +50,6 @@ type cloudConfig struct {
 	BagCopyDir            string       `yaml:"bag-copy-dir"`
 	TriggersDir           string       `yaml:"triggers-dir"`
 	RpcPort               string       `yaml:"rpc-port"`
-	RecordEnvs            []string     `yaml:"record-envs"`
 	Triggers              []trigger    `yaml:"triggers"`
 	Hosts                 []hostStruct `yaml:"hosts"`
 	Ros                   ros          `yaml:"ros"`

+ 6 - 0
aarch64/pji/common/config/c_local.go

@@ -6,6 +6,11 @@ import (
 	"os"
 )
 
+type node struct {
+	Name string `yaml:"name"`
+	Ip   string `yaml:"ip"`
+}
+
 type restartCmd struct {
 	Dir  string   `yaml:"dir"`
 	Name string   `yaml:"name"`
@@ -13,6 +18,7 @@ type restartCmd struct {
 }
 
 type localConfig struct {
+	Node                 node       `yaml:"node"`                    // 节点信息
 	UrlGetOssConfig      string     `yaml:"url-get-oss-config"`      // 获取oss配置的url
 	OssBasePrefix        string     `yaml:"oss-base-prefix"`         // 云端配置文件的位置
 	EquipmentNo          string     `yaml:"equipment-no"`            // 当前设备的编号

+ 14 - 1
aarch64/pji/common/config/c_ros.go

@@ -7,7 +7,11 @@ import (
 	"time"
 )
 
-var RosNode *goroslib.Node
+var (
+	RosNode    *goroslib.Node
+	RosbagPath string
+	RosbagEnvs []string
+)
 
 func InitRosConfig() {
 	var err error
@@ -24,5 +28,14 @@ func InitRosConfig() {
 		c_log.GlobalLogger.Info("初始化RosNode - 成功:", CloudConfig.Ros.MasterAddress)
 		break
 	}
+	// 获取 rosbag 命令路径和环境变量
+	for _, host := range CloudConfig.Hosts {
+		if host.Name == LocalConfig.Node.Name {
+			RosbagPath = host.Rosbag.Path
+			RosbagEnvs = host.Rosbag.Envs
+			break
+		}
+	}
+	c_log.GlobalLogger.Infof("rosbag 命令路径为:%v,环境变量为:%v", RosbagPath, RosbagEnvs)
 
 }

+ 23 - 21
aarch64/pji/common/config/yaml/cloud-config-pji1.yaml

@@ -14,27 +14,6 @@ bag-copy-dir: /root/rosbag-handle/copy/
 triggers-dir: /root/rosbag-handle/triggers/
 time-window-send-gap: 6
 rpc-port: 12341
-record-envs:
-  - "C_INCLUDE_PATH=/usr/include/drm:"
-  - "USER=root"
-  - "ROS_PACKAGE_PATH=/opt/ros/melodic/share"
-  - "LD_LIBRARY_PATH=/opt/ros/melodic/lib:/opt/ros/melodic/lib/aarch64-linux-gnu"
-  - "ROS_ETC_DIR=/opt/ros/melodic/etc/ros"
-  - "SHLVL=1"
-  - "HOME=/root"
-  - "ROS_PYTHON_VERSION=2"
-  - "PCMANFM_OUTLINE_MODE=on"
-  - "CPLUS_INCLUDE_PATH=/usr/include/drm:"
-  - "ROS_DISTRO=melodic"
-  - "ROS_VERSION=1"
-  - "PKG_CONFIG_PATH=/opt/ros/melodic/lib/pkgconfig"
-  - "PATH=/opt/ros/melodic/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/go/bin:/root/go/bin"
-  - "ROS_ROOT=/opt/ros/melodic/share/ros"
-  - "ROSLISP_PACKAGE_DIRECTORIES="
-  - "ROS_MASTER_URI=http://192.168.1.104:11311"
-  - "PYTHONPATH=/opt/ros/melodic/lib/python2.7/dist-packages"
-  - "ROS_HOSTNAME=192.168.1.104"
-  - "CMAKE_PREFIX_PATH=/opt/ros/melodic"
 ros:
   master-address: 192.168.1.104:11311
   nodes:
@@ -67,6 +46,29 @@ ros:
 hosts:
   - name: node1
     ip: 192.168.1.104
+    rosbag:
+      path: "/opt/ros/melodic/bin/rosbag"
+      envs:
+        - "C_INCLUDE_PATH=/usr/include/drm:"
+        - "USER=root"
+        - "ROS_PACKAGE_PATH=/opt/ros/melodic/share"
+        - "LD_LIBRARY_PATH=/opt/ros/melodic/lib:/opt/ros/melodic/lib/aarch64-linux-gnu"
+        - "ROS_ETC_DIR=/opt/ros/melodic/etc/ros"
+        - "SHLVL=1"
+        - "HOME=/root"
+        - "ROS_PYTHON_VERSION=2"
+        - "PCMANFM_OUTLINE_MODE=on"
+        - "CPLUS_INCLUDE_PATH=/usr/include/drm:"
+        - "ROS_DISTRO=melodic"
+        - "ROS_VERSION=1"
+        - "PKG_CONFIG_PATH=/opt/ros/melodic/lib/pkgconfig"
+        - "PATH=/opt/ros/melodic/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/go/bin:/root/go/bin"
+        - "ROS_ROOT=/opt/ros/melodic/share/ros"
+        - "ROSLISP_PACKAGE_DIRECTORIES="
+        - "ROS_MASTER_URI=http://192.168.1.104:11311"
+        - "PYTHONPATH=/opt/ros/melodic/lib/python2.7/dist-packages"
+        - "ROS_HOSTNAME=192.168.1.104"
+        - "CMAKE_PREFIX_PATH=/opt/ros/melodic"
     topics:
       - /camera/color/image_raw
       - /camera/depth/points

+ 3 - 0
aarch64/pji/common/config/yaml/local-config-pji1.yaml

@@ -1,3 +1,6 @@
+node:
+  name: node1
+  ip: 192.168.1.104
 # 数据闭环平台参数
 equipment-no: pji1
 secret-key: K0HDMoceI4BXUOEx0c1PlRK7CdZ9dhUNYA66iKfk

+ 2 - 2
aarch64/pji/common/service/rosbag_record.go

@@ -46,8 +46,8 @@ func BagRecord(nodeName string) {
 		c_log.GlobalLogger.Info("系统环境变量为:", systemEnv)
 	parent:
 		for {
-			c_log.GlobalLogger.Info("record 环境变量为:", config.CloudConfig.RecordEnvs)
-			cmd, err = util.ExecuteWithEnvAndDirAsync(config.CloudConfig.RecordEnvs, config.CloudConfig.BagDataDir, "/opt/ros/melodic/bin/rosbag", command...)
+			c_log.GlobalLogger.Info("record 环境变量为:", config.RosbagEnvs)
+			cmd, err = util.ExecuteWithEnvAndDirAsync(config.RosbagEnvs, config.CloudConfig.BagDataDir, config.RosbagPath, command...)
 			if err != nil {
 				c_log.GlobalLogger.Error("执行record命令", command, "出错:", err)
 				continue

+ 2 - 2
aarch64/pji/common/service/rosbag_upload.go

@@ -70,7 +70,7 @@ outLoop:
 				oldName := bag
 				newName := bag + "_filter"
 				filterCommand := []string{"filter", oldName, newName, "\"" + strings.Join(topicsFilterSlice, " or ") + "\""}
-				_, output, err := util.ExecuteWithEnvSync(os.Environ(), "rosbag", filterCommand...)
+				_, output, err := util.ExecuteWithEnvSync(commonConfig.RosbagEnvs, commonConfig.RosbagPath, filterCommand...)
 				c_log.GlobalLogger.Info("正在过滤中,【FaultTime】=", currentTimeWindow.FaultTime, "【Label】=", currentTimeWindow.Labels, ",进度", i+1, "/", bagNumber, "。")
 				if err != nil {
 					c_log.GlobalLogger.Errorf("filter命令执行出错【命令】=%v,【输出】=%v,【err】=%v", filterCommand, output, err)
@@ -92,7 +92,7 @@ outLoop:
 			oldName := bag
 			compressCommand := []string{"compress", "--bz2", oldName}
 			c_log.GlobalLogger.Info("正在压缩中,【FaultTime】=", currentTimeWindow.FaultTime, "【Label】=", currentTimeWindow.Labels, ",进度", i+1, "/", bagNumber, "。")
-			if _, output, err := util.ExecuteWithEnvSync(os.Environ(), "rosbag", compressCommand...); err != nil {
+			if _, output, err := util.ExecuteWithEnvSync(commonConfig.RosbagEnvs, commonConfig.RosbagPath, compressCommand...); err != nil {
 				c_log.GlobalLogger.Errorf("compress命令执行出错【命令】=%v,【输出】=%v,【err】=%v", compressCommand, output, err)
 				continue
 			}

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

@@ -15,11 +15,16 @@ type platform struct {
 	UrlTask       string `yaml:"url-task"`
 }
 
+type rosbagStruct struct {
+	Path string   `yaml:"path"`
+	Envs []string `yaml:"envs"`
+}
+
 type hostStruct struct {
-	Name       string   `yaml:"name"`
-	Ip         string   `yaml:"ip"`
-	Topics     []string `yaml:"topics"`
-	RecordEnvs []string `yaml:"record-envs"`
+	Name   string       `yaml:"name"`
+	Ip     string       `yaml:"ip"`
+	Topics []string     `yaml:"topics"`
+	Rosbag rosbagStruct `yaml:"rosbag"`
 }
 type ros struct {
 	MasterAddress string   `yaml:"master-address"`

+ 7 - 6
aarch64/pjisuv/common/config/c_ros.go

@@ -8,8 +8,9 @@ import (
 )
 
 var (
-	RosNode *goroslib.Node
-	RosEnv  []string
+	RosNode    *goroslib.Node
+	RosbagPath string
+	RosbagEnvs []string
 )
 
 func InitRosConfig() {
@@ -24,13 +25,13 @@ func InitRosConfig() {
 		os.Exit(-1)
 	}
 	c_log.GlobalLogger.Info("初始化RosNode - 成功:", CloudConfig.Ros.MasterAddress)
-	// 获取 record 命令环境变量
+	// 获取 rosbag 命令路径和环境变量
 	for _, host := range CloudConfig.Hosts {
 		if host.Name == LocalConfig.Node.Name {
-			RosEnv = host.RecordEnvs
+			RosbagPath = host.Rosbag.Path
+			RosbagEnvs = host.Rosbag.Envs
 			break
 		}
 	}
-	c_log.GlobalLogger.Info("ros 环境变量为:", RosEnv)
-
+	c_log.GlobalLogger.Infof("rosbag 命令路径为:%v,环境变量为:%v", RosbagPath, RosbagEnvs)
 }

+ 40 - 36
aarch64/pjisuv/common/config/yaml/cloud-config-pjisuv95.yaml

@@ -28,53 +28,57 @@ ros:
 hosts:
   - name: node1
     ip: 192.168.1.102
+    rosbag:
+      path: "/opt/ros/melodic/bin/rosbag"
+      envs:
+        - "LD_LIBRARY_PATH=/opt/ros/melodic/lib:/usr/lib::/usr/lib:/userdata/third_lib/libaicc"
+        - "ROS_ETC_DIR=/opt/ros/melodic/etc/ros"
+        - "USER=root"
+        - "ROS_OS_OVERRIDE=openembedded"
+        - "PWD=/mnt/media/sda1/cicv-data-closedloop"
+        - "HOME=/home/root"
+        - "CMAKE_PREFIX_PATH=/opt/ros/melodic:/usr"
+        - "ROS_ROOT=/opt/ros/melodic/share/ros"
+        - "ROS_MASTER_URI=http://192.168.1.102:11311"
+        - "ROS_VERSION=1"
+        - "ROS_PYTHON_VERSION=2"
+        - "ROS_IP=192.168.1.102"
+        - "PYTHONPATH=/opt/ros/melodic/lib/python2.7/site-packages:/usr/lib/python2.7/site-packages"
+        - "ROS_PACKAGE_PATH=/opt/ros/melodic/share"
+        - "PATH=/opt/ros/melodic/bin:/usr/bin/cyber/tools/cyber_service:/usr/bin/cyber/tools/cyber_node:/usr/bin/cyber/tools/cyber_channel:/usr/bin/cyber/tools/cyber_launch:/usr/bin/cyber/tools/cyber_monitor:/usr/bin/cyber/tools/cyber_recorder:/apollo/bazel-bin/cyber:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"
+        - "PKG_CONFIG_PATH=/usr/lib/pkgconfig"
+        - "ROS_DISTRO=melodic"
     topics:
       - /camera_image # /camera_output
       - /cicv_amr_trajectory #  /planner_s4
       - /pj_control_pub # /control
   #      - /data_read
-    record-envs:
-      - "LD_LIBRARY_PATH=/opt/ros/melodic/lib:/usr/lib::/usr/lib:/userdata/third_lib/libaicc"
-      - "ROS_ETC_DIR=/opt/ros/melodic/etc/ros"
-      - "USER=root"
-      - "ROS_OS_OVERRIDE=openembedded"
-      - "PWD=/mnt/media/sda1/cicv-data-closedloop"
-      - "HOME=/home/root"
-      - "CMAKE_PREFIX_PATH=/opt/ros/melodic:/usr"
-      - "ROS_ROOT=/opt/ros/melodic/share/ros"
-      - "ROS_MASTER_URI=http://192.168.1.102:11311"
-      - "ROS_VERSION=1"
-      - "ROS_PYTHON_VERSION=2"
-      - "ROS_IP=192.168.1.102"
-      - "PYTHONPATH=/opt/ros/melodic/lib/python2.7/site-packages:/usr/lib/python2.7/site-packages"
-      - "ROS_PACKAGE_PATH=/opt/ros/melodic/share"
-      - "PATH=/opt/ros/melodic/bin:/usr/bin/cyber/tools/cyber_service:/usr/bin/cyber/tools/cyber_node:/usr/bin/cyber/tools/cyber_channel:/usr/bin/cyber/tools/cyber_launch:/usr/bin/cyber/tools/cyber_monitor:/usr/bin/cyber/tools/cyber_recorder:/apollo/bazel-bin/cyber:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"
-      - "PKG_CONFIG_PATH=/usr/lib/pkgconfig"
-      - "ROS_DISTRO=melodic"
   - name: node2
     ip: 192.168.1.103
+    rosbag:
+      path: "/opt/ros/melodic/bin/rosbag"
+      envs:
+        - "LD_LIBRARY_PATH=/opt/ros/melodic/lib:/usr/lib::/usr/lib:/userdata/third_lib"
+        - "ROS_ETC_DIR=/opt/ros/melodic/etc/ros"
+        - "USER=root"
+        - "ROS_OS_OVERRIDE=openembedded"
+        - "PWD=/mnt/media/sda1/cicv-data-closedloop"
+        - "HOME=/home/root"
+        - "CMAKE_PREFIX_PATH=/opt/ros/melodic:/usr"
+        - "ROS_ROOT=/opt/ros/melodic/share/ros"
+        - "ROS_MASTER_URI=http://192.168.1.102:11311"
+        - "ROS_VERSION=1"
+        - "ROS_PYTHON_VERSION=2"
+        - "ROS_IP=192.168.1.103"
+        - "PYTHONPATH=/opt/ros/melodic/lib/python2.7/site-packages:/usr/lib/python2.7/site-packages"
+        - "ROS_PACKAGE_PATH=/opt/ros/melodic/share"
+        - "PATH=/opt/ros/melodic/bin:/usr/bin/cyber/tools/cyber_service:/usr/bin/cyber/tools/cyber_node:/usr/bin/cyber/tools/cyber_channel:/usr/bin/cyber/tools/cyber_launch:/usr/bin/cyber/tools/cyber_monitor:/usr/bin/cyber/tools/cyber_recorder:/apollo/bazel-bin/cyber:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin "
+        - "PKG_CONFIG_PATH=/usr/lib/pkgconfig"
+        - "ROS_DISTRO=melodic"
     topics:
       - /points_concat  # /lidar_pretreatment
       - /tpperception # /sensorfusion
       - /cicv_location  # /ins
-    record-envs:
-      - "LD_LIBRARY_PATH=/opt/ros/melodic/lib:/usr/lib::/usr/lib:/userdata/third_lib"
-      - "ROS_ETC_DIR=/opt/ros/melodic/etc/ros"
-      - "USER=root"
-      - "ROS_OS_OVERRIDE=openembedded"
-      - "PWD=/mnt/media/sda1/cicv-data-closedloop"
-      - "HOME=/home/root"
-      - "CMAKE_PREFIX_PATH=/opt/ros/melodic:/usr"
-      - "ROS_ROOT=/opt/ros/melodic/share/ros"
-      - "ROS_MASTER_URI=http://192.168.1.102:11311"
-      - "ROS_VERSION=1"
-      - "ROS_PYTHON_VERSION=2"
-      - "ROS_IP=192.168.1.103"
-      - "PYTHONPATH=/opt/ros/melodic/lib/python2.7/site-packages:/usr/lib/python2.7/site-packages"
-      - "ROS_PACKAGE_PATH=/opt/ros/melodic/share"
-      - "PATH=/opt/ros/melodic/bin:/usr/bin/cyber/tools/cyber_service:/usr/bin/cyber/tools/cyber_node:/usr/bin/cyber/tools/cyber_channel:/usr/bin/cyber/tools/cyber_launch:/usr/bin/cyber/tools/cyber_monitor:/usr/bin/cyber/tools/cyber_recorder:/apollo/bazel-bin/cyber:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin "
-      - "PKG_CONFIG_PATH=/usr/lib/pkgconfig"
-      - "ROS_DISTRO=melodic"
 triggers:
   - label: rapidaccel
     topics:

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

@@ -39,7 +39,7 @@ func BagRecord(nodeName string) {
 		_ = util.CreateParentDir(config.CloudConfig.BagDataDir)
 		systemEnv := os.Environ()
 		c_log.GlobalLogger.Info("系统环境变量为:", systemEnv)
-		cmd, err := util.ExecuteWithEnvAndDirAsync(config.RosEnv, config.CloudConfig.BagDataDir, "/opt/ros/melodic/bin/rosbag", command...)
+		cmd, err := util.ExecuteWithEnvAndDirAsync(config.RosbagEnvs, config.CloudConfig.BagDataDir, config.RosbagPath, command...)
 		if err != nil {
 			c_log.GlobalLogger.Error("执行record命令", command, "出错:", err)
 			continue

+ 2 - 2
aarch64/pjisuv/common/service/rosbag_upload.go

@@ -70,7 +70,7 @@ outLoop:
 				oldName := bag
 				newName := bag + "_filter"
 				filterCommand := []string{"filter", oldName, newName, "\"" + strings.Join(topicsFilterSlice, " or ") + "\""}
-				_, output, err := commonUtil.ExecuteWithEnvSync(commonConfig.RosEnv, "rosbag", filterCommand...)
+				_, output, err := commonUtil.ExecuteWithEnvSync(commonConfig.RosbagEnvs, commonConfig.RosbagPath, filterCommand...)
 				c_log.GlobalLogger.Info("正在过滤中,【FaultTime】=", currentTimeWindow.FaultTime, "【Label】=", currentTimeWindow.Labels, ",进度", i+1, "/", bagNumber, "。")
 				if err != nil {
 					c_log.GlobalLogger.Errorf("filter 命令执行出错【命令】=%v,【输出】=%v,【err】=%v", filterCommand, output, err)
@@ -92,7 +92,7 @@ outLoop:
 			oldName := bag
 			compressCommand := []string{"compress", "--bz2", oldName}
 			c_log.GlobalLogger.Info("正在压缩中,【FaultTime】=", currentTimeWindow.FaultTime, "【Label】=", currentTimeWindow.Labels, ",进度", i+1, "/", bagNumber, "。")
-			if _, output, err := commonUtil.ExecuteWithEnvSync(commonConfig.RosEnv, "rosbag", compressCommand...); err != nil {
+			if _, output, err := commonUtil.ExecuteWithEnvSync(commonConfig.RosbagEnvs, commonConfig.RosbagPath, compressCommand...); err != nil {
 				c_log.GlobalLogger.Errorf("compress 命令执行出错【命令】=%v,【输出】=%v,【err】=%v", compressCommand, output, err)
 				continue
 			}