From d0688eb1222ddb3b5ddd8a6641cbdacd9c588b66 Mon Sep 17 00:00:00 2001 From: X-lanni Date: Sat, 14 Jun 2025 16:28:30 +0800 Subject: [PATCH] Update LSLiDAR driver and AGV configs 1. LSLiDAR driver: - Fixed packet header check in serial parser - Updated angle compensation for M10 series - Fixed angle discontinuity bug - Added optional PointCloud2 publishing - Added optional LaserScan publishing - Added support for ROS 2 Humble - Added support for dual-echo LiDARs - Added TXT-based config loading 2. RViz: - Updated gmapping.rviz file for SLAM display 3. AGV bringup: - Modified launch file for LSN10P integration --- Lslidar_ROS2_driver/README.md | 0 .../lslidar_driver/CMakeLists.txt | 0 .../include/lslidar_driver/input.h | 0 .../include/lslidar_driver/lsiosr.h | 0 .../include/lslidar_driver/lslidar_driver.h | 0 .../launch/lslidar_double_launch.py | 50 ------------------ .../{lslidar_launch.py => lsn10p_launch.py} | 4 +- .../launch/viewer_scan_launch.py | 26 +++++++++ .../lslidar_driver/package.xml | 0 .../lsn10p.yaml} | 6 +-- .../lslidar_driver/params/lsx10_1.yaml | 25 --------- .../lslidar_driver/params/lsx10_2.yaml | 25 --------- .../lslidar_driver/rviz/lslidar.rviz | 0 .../lslidar_driver/src/input.cc | 0 .../lslidar_driver/src/lsiosr.cpp | 0 .../lslidar_driver/src/lslidar_driver.cc | 36 +++++++++++-- .../lslidar_driver/src/lslidar_driver_node.cc | 0 .../lslidar_msgs/CMakeLists.txt | 0 .../lslidar_msgs/msg/LslidarDifop.msg | 0 .../lslidar_msgs/msg/LslidarPacket.msg | 0 .../lslidar_msgs/msg/LslidarPoint.msg | 0 .../lslidar_msgs/msg/LslidarScan.msg | 0 .../lslidar_msgs/msg/LslidarSweep.msg | 0 Lslidar_ROS2_driver/lslidar_msgs/package.xml | 0 Lslidar_ROS2_driver/version.txt | 0 Lslidar_ROS2_driver/镭神Lsx雷达旋转角度.png | Bin 0 -> 6646 bytes .../launch/agv_pro_bringup.launch.py | 2 +- .../slam_gmapping/rviz/gmapping.rviz | 13 ++--- 28 files changed, 72 insertions(+), 115 deletions(-) mode change 100644 => 100755 Lslidar_ROS2_driver/README.md mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/CMakeLists.txt mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/input.h mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/lsiosr.h mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/lslidar_driver.h delete mode 100644 Lslidar_ROS2_driver/lslidar_driver/launch/lslidar_double_launch.py rename Lslidar_ROS2_driver/lslidar_driver/launch/{lslidar_launch.py => lsn10p_launch.py} (92%) mode change 100644 => 100755 create mode 100755 Lslidar_ROS2_driver/lslidar_driver/launch/viewer_scan_launch.py mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/package.xml rename Lslidar_ROS2_driver/lslidar_driver/params/{lsx10.yaml => lidar_uart_ros2/lsn10p.yaml} (87%) mode change 100644 => 100755 delete mode 100644 Lslidar_ROS2_driver/lslidar_driver/params/lsx10_1.yaml delete mode 100644 Lslidar_ROS2_driver/lslidar_driver/params/lsx10_2.yaml mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/rviz/lslidar.rviz mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/src/input.cc mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/src/lsiosr.cpp mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/src/lslidar_driver.cc mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_driver/src/lslidar_driver_node.cc mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_msgs/CMakeLists.txt mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarDifop.msg mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarPacket.msg mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarPoint.msg mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarScan.msg mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarSweep.msg mode change 100644 => 100755 Lslidar_ROS2_driver/lslidar_msgs/package.xml mode change 100644 => 100755 Lslidar_ROS2_driver/version.txt create mode 100755 Lslidar_ROS2_driver/镭神Lsx雷达旋转角度.png diff --git a/Lslidar_ROS2_driver/README.md b/Lslidar_ROS2_driver/README.md old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/CMakeLists.txt b/Lslidar_ROS2_driver/lslidar_driver/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/input.h b/Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/input.h old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/lsiosr.h b/Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/lsiosr.h old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/lslidar_driver.h b/Lslidar_ROS2_driver/lslidar_driver/include/lslidar_driver/lslidar_driver.h old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/launch/lslidar_double_launch.py b/Lslidar_ROS2_driver/lslidar_driver/launch/lslidar_double_launch.py deleted file mode 100644 index f1361fb..0000000 --- a/Lslidar_ROS2_driver/lslidar_driver/launch/lslidar_double_launch.py +++ /dev/null @@ -1,50 +0,0 @@ -#!/usr/bin/python3 -from ament_index_python.packages import get_package_share_directory -from launch import LaunchDescription -from launch_ros.actions import LifecycleNode -from launch.substitutions import LaunchConfiguration -from launch_ros.actions import Node -from launch.actions import DeclareLaunchArgument - -import lifecycle_msgs.msg -import os - -def generate_launch_description(): - - driver_dir_1 = os.path.join(get_package_share_directory('lslidar_driver'), 'params', 'lsx10_1.yaml') - driver_dir_2 = os.path.join(get_package_share_directory('lslidar_driver'), 'params', 'lsx10_2.yaml') - - driver_node_1 = LifecycleNode(package='lslidar_driver', - executable='lslidar_driver_node', - name='lslidar_driver_node', #设置激光数据topic名称 - output='screen', - emulate_tty=True, - namespace='lidar_1', - parameters=[driver_dir_1], - ) - - driver_node_2 = LifecycleNode(package='lslidar_driver', - executable='lslidar_driver_node', - name='lslidar_driver_node', #设置激光数据topic名称 - output='screen', - emulate_tty=True, - namespace='lidar_2', - parameters=[driver_dir_2], - ) - - rviz_dir = os.path.join(get_package_share_directory('lslidar_driver'), 'rviz', 'lslidar.rviz') - - rviz_node = Node( - package='rviz2', - namespace='', - executable='rviz2', - name='rviz2', - arguments=['-d', rviz_dir], - output='screen') - - return LaunchDescription([ - driver_node_1, - driver_node_2, - rviz_node, - ]) - diff --git a/Lslidar_ROS2_driver/lslidar_driver/launch/lslidar_launch.py b/Lslidar_ROS2_driver/lslidar_driver/launch/lsn10p_launch.py old mode 100644 new mode 100755 similarity index 92% rename from Lslidar_ROS2_driver/lslidar_driver/launch/lslidar_launch.py rename to Lslidar_ROS2_driver/lslidar_driver/launch/lsn10p_launch.py index 9e967b7..758b03b --- a/Lslidar_ROS2_driver/lslidar_driver/launch/lslidar_launch.py +++ b/Lslidar_ROS2_driver/lslidar_driver/launch/lsn10p_launch.py @@ -11,7 +11,7 @@ import os def generate_launch_description(): - driver_dir = os.path.join(get_package_share_directory('lslidar_driver'), 'params', 'lsx10.yaml') + driver_dir = os.path.join(get_package_share_directory('lslidar_driver'), 'params','lidar_uart_ros2', 'lsn10p.yaml') driver_node = LifecycleNode(package='lslidar_driver', executable='lslidar_driver_node', @@ -23,6 +23,6 @@ def generate_launch_description(): ) return LaunchDescription([ - driver_node + driver_node, ]) diff --git a/Lslidar_ROS2_driver/lslidar_driver/launch/viewer_scan_launch.py b/Lslidar_ROS2_driver/lslidar_driver/launch/viewer_scan_launch.py new file mode 100755 index 0000000..c82e76d --- /dev/null +++ b/Lslidar_ROS2_driver/lslidar_driver/launch/viewer_scan_launch.py @@ -0,0 +1,26 @@ +#!/usr/bin/python3 +from ament_index_python.packages import get_package_share_directory +from launch import LaunchDescription +from launch_ros.actions import LifecycleNode +from launch.substitutions import LaunchConfiguration +from launch_ros.actions import Node +from launch.actions import DeclareLaunchArgument + +import lifecycle_msgs.msg +import os + +def generate_launch_description(): + + rviz2_config = os.path.join(get_package_share_directory('lslidar_driver'),'rviz','lslidar.rviz') + + rviz2_node = Node( + package='rviz2', + executable='rviz2', + name='rviz2', + arguments=['-d',rviz2_config], + output='screen') + + return LaunchDescription([ + rviz2_node, + ]) + diff --git a/Lslidar_ROS2_driver/lslidar_driver/package.xml b/Lslidar_ROS2_driver/lslidar_driver/package.xml old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/params/lsx10.yaml b/Lslidar_ROS2_driver/lslidar_driver/params/lidar_uart_ros2/lsn10p.yaml old mode 100644 new mode 100755 similarity index 87% rename from Lslidar_ROS2_driver/lslidar_driver/params/lsx10.yaml rename to Lslidar_ROS2_driver/lslidar_driver/params/lidar_uart_ros2/lsn10p.yaml index 82424b7..88c3167 --- a/Lslidar_ROS2_driver/lslidar_driver/params/lsx10.yaml +++ b/Lslidar_ROS2_driver/lslidar_driver/params/lidar_uart_ros2/lsn10p.yaml @@ -10,16 +10,16 @@ lidar_name: N10_P #雷达选择:M10 M10_P M10_PLUS M10_GPS N10 L10 N10_P angle_disable_min: 0.0 #角度裁剪开始值 angle_disable_max: 0.0 #角度裁剪结束值 - min_range: 0.0 #雷达接收距离最小值 + min_range: 0.2 #雷达接收距离最小值 max_range: 200.0 #雷达接收距离最大值 use_gps_ts: false #雷达是否使用GPS授时 scan_topic: /scan #设置激光数据topic名称 interface_selection: serial #接口选择:net 为网口,serial 为串口。 serial_port_: /dev/agvpro_lidar #串口连接时的串口号 high_reflection: false #M10_P雷达需填写该值,若不确定,请联系技术支持。 - compensation: false #M10系列是否使用角度补偿功能 + compensation: false #M10系列是否使用角度补偿功能 pubScan: true #是否发布scan话题 - pubPointCloud2: false #是否发布pointcloud2话题 + pubPointCloud2: false #是否发布pointcloud2话题 pointcloud_topic: /lslidar_point_cloud #设置激光数据topic名称 # pcap: /home/ls/1.pcap #雷达是否使用pcap包读取功能 # in_file_name: /home/ls/1.txt #雷达是否使用txt文件读取功能 diff --git a/Lslidar_ROS2_driver/lslidar_driver/params/lsx10_1.yaml b/Lslidar_ROS2_driver/lslidar_driver/params/lsx10_1.yaml deleted file mode 100644 index dbeeafa..0000000 --- a/Lslidar_ROS2_driver/lslidar_driver/params/lsx10_1.yaml +++ /dev/null @@ -1,25 +0,0 @@ -/lidar_1/lslidar_driver_node: - ros__parameters: - frame_id: laser_link #激光坐标 - group_ip: 224.1.1.2 - add_multicast: false - device_ip: 192.168.1.200 #雷达源ip - device_ip_difop: 192.168.1.102 #雷达目的IP - msop_port: 2368 #雷达目的端口号 - difop_port: 2369 #雷达源端口号 - lidar_name: M10 #雷达选择:M10 M10_P M10_PLUS M10_GPS N10 L10 - angle_disable_min: 0.0 #角度裁剪开始值 - angle_disable_max: 90.0 #角度裁剪结束值 - min_range: 0.0 #雷达接收距离最小值 - max_range: 200.0 #雷达接收距离最大值 - use_gps_ts: false #雷达是否使用GPS授时 - scan_topic: /scan #设置激光数据topic名称 - interface_selection: serial #接口选择:net 为网口,serial 为串口。 - serial_port_: /dev/ttyUSB0 #串口连接时的串口号 - high_reflection: false #M10_P雷达需填写该值,若不确定,请联系技术支持。 - compensation: true #M10系列是否使用角度补偿功能 - pubScan: true #是否发布scan话题 - pubPointCloud2: true #是否发布pointcloud2话题 - pointcloud_topic: /lslidar_point_cloud #设置激光数据topic名称 -# pcap: /home/ls/work/2211/M10_P_gps.pcap #雷达是否使用pcap包读取功能 -# in_file_name: /home/ls/1.txt #雷达是否使用txt文件读取功能 \ No newline at end of file diff --git a/Lslidar_ROS2_driver/lslidar_driver/params/lsx10_2.yaml b/Lslidar_ROS2_driver/lslidar_driver/params/lsx10_2.yaml deleted file mode 100644 index 84a6e7b..0000000 --- a/Lslidar_ROS2_driver/lslidar_driver/params/lsx10_2.yaml +++ /dev/null @@ -1,25 +0,0 @@ -/lidar_2/lslidar_driver_node: - ros__parameters: - frame_id: laser_link #激光坐标 - group_ip: 224.1.1.2 - add_multicast: false - device_ip: 192.168.1.200 #雷达源ip - device_ip_difop: 192.168.1.102 #雷达目的IP - msop_port: 2368 #雷达目的端口号 - difop_port: 2369 #雷达源端口号 - lidar_name: M10_PLUS #雷达选择:M10 M10_P M10_PLUS M10_GPS N10 L10 - angle_disable_min: 0.0 #角度裁剪开始值 - angle_disable_max: 90.0 #角度裁剪结束值 - min_range: 0.0 #雷达接收距离最小值 - max_range: 200.0 #雷达接收距离最大值 - use_gps_ts: false #雷达是否使用GPS授时 - scan_topic: /scan #设置激光数据topic名称 - interface_selection: net #接口选择:net 为网口,serial 为串口。 - serial_port_: /dev/ttyUSB0 #串口连接时的串口号 - high_reflection: false #M10_P雷达需填写该值,若不确定,请联系技术支持。 - compensation: true #M10系列是否使用角度补偿功能 - pubScan: true #是否发布scan话题 - pubPointCloud2: true #是否发布pointcloud2话题 - pointcloud_topic: /lslidar_point_cloud #设置激光数据topic名称 -# pcap: /home/ls/work/2211/M10_P_gps.pcap #雷达是否使用pcap包读取功能 -# in_file_name: /home/ls/1.txt #雷达是否使用txt文件读取功能 \ No newline at end of file diff --git a/Lslidar_ROS2_driver/lslidar_driver/rviz/lslidar.rviz b/Lslidar_ROS2_driver/lslidar_driver/rviz/lslidar.rviz old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/src/input.cc b/Lslidar_ROS2_driver/lslidar_driver/src/input.cc old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/src/lsiosr.cpp b/Lslidar_ROS2_driver/lslidar_driver/src/lsiosr.cpp old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_driver/src/lslidar_driver.cc b/Lslidar_ROS2_driver/lslidar_driver/src/lslidar_driver.cc old mode 100644 new mode 100755 index cdb2e08..55c5e69 --- a/Lslidar_ROS2_driver/lslidar_driver/src/lslidar_driver.cc +++ b/Lslidar_ROS2_driver/lslidar_driver/src/lslidar_driver.cc @@ -31,6 +31,14 @@ #include "lslidar_driver/lslidar_driver.h" #include +int truncated_mode_=0; //多角度屏蔽开关:默认为0,如果需要屏蔽多个角度,则truncated_mode_赋值为1。 + +int scan_crop_min[]={0,180}; //雷达屏蔽角度,这里屏蔽角度为135°到225°, + //如果要多角度屏蔽,如10~30,50~60,改为: + //scan_angle_min[]={10,50};scan_angle_max[]={30,60}; +int scan_crop_max[]={90,270}; //修改后编译即可 + + namespace lslidar_driver { @@ -82,7 +90,7 @@ namespace lslidar_driver this->declare_parameter("use_gps_ts", false); this->declare_parameter("high_reflection", false); this->declare_parameter("compensation", false); - this->declare_parameter("pubScan", false); + this->declare_parameter("pubScan", true); this->declare_parameter("pubPointCloud2", false); this->declare_parameter("angle_disable_min", 0.0); this->declare_parameter("angle_disable_max", 0.0); @@ -970,7 +978,9 @@ namespace lslidar_driver if (pubScan) { auto scan = sensor_msgs::msg::LaserScan::UniquePtr(new sensor_msgs::msg::LaserScan()); - int scan_num = count_num * 2; + ////int scan_num = count_num * 2; + int scan_num = count_num ; + std::vector points; rclcpp::Time start_time; float scan_time; @@ -1017,6 +1027,16 @@ namespace lslidar_driver scan->ranges[point_idx] = (float)dist; scan->intensities[point_idx] = points[i].intensity; } + if(truncated_mode_){ + int len=sizeof(scan_crop_max) / sizeof(scan_crop_max[0]) ; + for(int j=0;j=(scan_crop_min[j]*count_num / 360)) && (point_idx<=(scan_crop_max[j]*count_num / 360))){ + scan->ranges[point_idx] = std::numeric_limits::infinity(); + scan->intensities[point_idx] = 0; + } + } + } + /* if (points[i + 3000].range == 0.0) { scan->ranges[point_idx + count_num] = std::numeric_limits::infinity(); @@ -1027,7 +1047,7 @@ namespace lslidar_driver double dist = points[i+3000].range; scan->ranges[point_idx + count_num] = (float)dist; scan->intensities[point_idx + count_num] = points[i + 3000].intensity; - } + }*/ } scan_pub->publish(std::move(scan)); } @@ -1164,6 +1184,16 @@ namespace lslidar_driver scan->ranges[point_idx] = (float)dist; } scan->intensities[point_idx] = points[i].intensity; + + if(truncated_mode_){ + int len=sizeof(scan_crop_max) / sizeof(scan_crop_max[0]) ; + for(int j=0;j=(scan_crop_min[j]*count_num / 360)) && (point_idx<=(scan_crop_max[j]*count_num / 360))){ + scan->ranges[point_idx] = std::numeric_limits::infinity(); + scan->intensities[point_idx] = 0; + } + } + } } scan_pub->publish(std::move(scan)); } diff --git a/Lslidar_ROS2_driver/lslidar_driver/src/lslidar_driver_node.cc b/Lslidar_ROS2_driver/lslidar_driver/src/lslidar_driver_node.cc old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_msgs/CMakeLists.txt b/Lslidar_ROS2_driver/lslidar_msgs/CMakeLists.txt old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarDifop.msg b/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarDifop.msg old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarPacket.msg b/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarPacket.msg old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarPoint.msg b/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarPoint.msg old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarScan.msg b/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarScan.msg old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarSweep.msg b/Lslidar_ROS2_driver/lslidar_msgs/msg/LslidarSweep.msg old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/lslidar_msgs/package.xml b/Lslidar_ROS2_driver/lslidar_msgs/package.xml old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/version.txt b/Lslidar_ROS2_driver/version.txt old mode 100644 new mode 100755 diff --git a/Lslidar_ROS2_driver/镭神Lsx雷达旋转角度.png b/Lslidar_ROS2_driver/镭神Lsx雷达旋转角度.png new file mode 100755 index 0000000000000000000000000000000000000000..aa247855f25076075025218ad73d877a247427a8 GIT binary patch literal 6646 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 literal 0 HcmV?d00001 diff --git a/agv_pro_bringup/launch/agv_pro_bringup.launch.py b/agv_pro_bringup/launch/agv_pro_bringup.launch.py index d202c7e..164a660 100644 --- a/agv_pro_bringup/launch/agv_pro_bringup.launch.py +++ b/agv_pro_bringup/launch/agv_pro_bringup.launch.py @@ -53,6 +53,6 @@ def generate_launch_description(): IncludeLaunchDescription( PythonLaunchDescriptionSource([os.path.join( get_package_share_directory('lslidar_driver'),'launch'), - '/lslidar_launch.py']) + '/lsn10p_launch.py']) ) ]) diff --git a/slam_gmapping/slam_gmapping/rviz/gmapping.rviz b/slam_gmapping/slam_gmapping/rviz/gmapping.rviz index 687bb55..81a0256 100644 --- a/slam_gmapping/slam_gmapping/rviz/gmapping.rviz +++ b/slam_gmapping/slam_gmapping/rviz/gmapping.rviz @@ -7,6 +7,7 @@ Panels: - /Global Options1 - /Status1 - /RobotModel1 + - /LaserScan1 Splitter Ratio: 0.5 Tree Height: 627 - Class: rviz_common/Selection @@ -189,14 +190,14 @@ Visualization Manager: Enabled: true Invert Rainbow: false Max Color: 255; 255; 255 - Max Intensity: 238 + Max Intensity: 230 Min Color: 0; 0; 0 Min Intensity: 6 Name: LaserScan Position Transformer: XYZ Selectable: true Size (Pixels): 3 - Size (m): 0.009999999776482582 + Size (m): 0.05000000074505806 Style: Flat Squares Topic: Depth: 5 @@ -211,7 +212,7 @@ Visualization Manager: Enabled: true Global Options: Background Color: 48; 48; 48 - Fixed Frame: odom + Fixed Frame: map Frame Rate: 30 Name: root Tools: @@ -254,7 +255,7 @@ Visualization Manager: Views: Current: Class: rviz_default_plugins/Orbit - Distance: 6.0411248207092285 + Distance: 8.487345695495605 Enable Stereo Rendering: Stereo Eye Separation: 0.05999999865889549 Stereo Focal Distance: 1 @@ -290,5 +291,5 @@ Window Geometry: Views: collapsed: true Width: 1200 - X: 584 - Y: 77 + X: 89 + Y: 85