Week 3 (4th Period)

Week 3 (4th Period)

  • António Morais
  • Tiago Teixeira
  • João Pinheiro
  • 4th Period - Weekly Progress
  • May 5, 2024

3D Mapping

→ LIO-SAM

Following last weeks updates the team made tests with the Jackal robot and the LiDAR_IMU_Init package. To begin this tests an important step was to export the roscore of the robot to the Docker container previously built with the following command:

export ROS_MASTER_URI=http;//${JACKAL_IP}:11311/

With the preliminary setup completed, testing commenced. However, despite a week of persistent efforts, including reaching out to the package author and consulting colleagues at the Institute of Systems and Robotics (ISR), no progress was made in synchronizing the LiDAR and IMU (Inertial Measurement Unit) system.

The primary issue lies in the synchronization initialization process. When attempting to detect the system’s degree of excitation, even the slightest movement causes all axis percentages to reach 100%, resulting in inaccurate parameters.

After making several attempts without success, the team opted to explore alternative options to the LIO-SAM algorithm. Following research and recommendations from a colleague at ISR, they chose to dedicate their efforts to a method known as FAST-LIO developed by the same authors as the LiDAR_IMU_Init package.

→ FAST-LIO

A significant advantage of this method is its compatibility with 6-axis IMUs, eliminating the need for an external IMU or one with 9 axes. This feature simplifies the setup process, particularly beneficial for LiDARs equipped with internal IMUs, such as the OS1 LiDAR used by the team. Consequently, immediate testing commenced with the OS1 LiDAR instead of the VLP-16 mounted on the Jackal robot.

Before setting up this algorithm, the responsible student opted to utilize Docker once again. To achieve this, a script named run_docker.sh was created for creating a container from an image. Initially, the student cloned the GitHub repository to their local machine and then made the file executable before running it.

$ sudo chmod +x <your_custom_name>.sh

The script’s main functionalities are described in the following bullet points:

  • Create Workspace Directory: Creates a directory named docker_ws in the user’s home directory to serve as the workspace for the Docker container.

  • Allow X Server Access: Enables access to the X server from the local machine, allowing GUI applications to be displayed.

  • Run Docker Container: Starts a Docker container named fastlio2 in interactive mode with the following configurations:

    • User and Network Configuration: Runs the container with specific user privileges and network settings.
    • Volume Mounting: Mounts certain directorys from the host machine to inside the container, providing easy data exchange between the host and container.
    • Environment Configuration: Sets environment variables to enable GUI applications to interact with the X server.
    • Image Selection: Uses the Docker image kenny0407/marslab_fastlio2:latest, which contains the necessary dependencies and configurations for running ROS Kinetic with GUI support.
    • Container Shell Access: Launches a shell inside the container for further interaction and configuration.

After this the user is now able to run the script with:

$ ./run_docker.sh

Once the container is created and a terminal is displayed inside it, users can navigate to the workspace (and set it up) by executing the following commands within the container:

$ cd home/mars_ugv/catkin_ws/
$ source devel/setup.bash

After this, the team began testing with a dataset provided by the authors to ensure everything was working properly. This dataset, named outdoor_Mainbuilding_10hz_2020-12-24-16-38-00.bag, utilizes a Livox LiDAR.

alter-text
Figure 1 - Process of running the outdoor_Mainbuilding_10hz_2020-12-24-16-38-00.bag dataset.

With the algorithm functioning correctly with the mentioned dataset, it was time to test it with the OS1 LiDAR integrated into the TIAGo robot, which involved testing with real data. To accomplish this, the team developed straightforward .launch and .yaml files related to the parameters of the team’s sensor. These files were then copied to the Docker container.

Several datasets were constructed, but the one shown here was considered the best, as it produced the most accurate map. This dataset was chosen for use in the Localization task. The following gifs are from the same dataset, with one showing the construction process of the testbed and the other depicting the entire laboratory of mobile robotics.

alter-text
Figure 2 - Process of running the dataset built of real data (only the testbed) - resolution of 5cm.
alter-text
Figure 3 - Process of running the dataset built of real data (all laboratory of mobile robotics) - resolution of 5cm.

One can now compare the maps built with the A-LOAM algorithm shown in Week 5 (3rd Period) with the ones depicted above. In robotics, map comparison is subjective, allowing one to intuitively assess both and decide based on visual appearance which one is better. From this comparison, it can be inferred that FAST-LIO outperforms A-LOAM .

Demo-Day Presentation Materials

→ Poster

For the Demo-Day the team needs to develop a poster of their project and this week the team started to think about the layout of the poster:

alter-text
Figure 4 - Initial layout of the poject poster.

The team’s plan was to provide an introduction to the project in the “Abstract” section, outline the “Problems with 2D-Sensor Based Navigation,” and then present the solution that the team is proposing to address these problems (“3D-Sensor Based Navigation”). Following this, they intended to discuss “How the solution was tested” and conclude with the presentation of the “Results.” However, the team has received some feedback on this layout and is planning to make changes in the upcoming weeks.

→ Video

The team members tasked with creating the Demo-Day video have commenced planning its structure. They have collectively agreed upon the following elements:

  • Introduction: This segment will provide a clear explanation of the problem being addressed, highlighting its three main aspects: mapping, localization, and planning.
  • Demonstrations: Each of the three aspects (mapping, localization, and planning) will be illustrated with simulation videos that compare older approaches with the team’s improvements. These comparisons will effectively showcase the differences and the value added by the enhancements to the robot’s navigation system.
  • Validation: The video will feature footage of the real robot executing tests outlined as validation metrics in the project proposal. These tests will serve to demonstrate the effectiveness of the integrated navigation system, encompassing all three aspects.

Furthermore, recognizing that the video will be playing on a loop at the demo-day without sound, the team plans to incorporate subtitles. These subtitles will utilize simple language to explain the demonstrations, ensuring that the content is easily understandable to all viewers.

Related Posts

Finals break

Finals break

  • António Morais
  • Term Breaks

Demo-Day Presentation Materials This final week, the team prepared the evaluation documents needed for Demo-Day and for submission due to the subject’s evaluation.

Read More
Week 1 (4th Period)

Week 1 (4th Period)

  • António Morais and Tiago Teixeira
  • 4th Period - Weekly Progress

2D Path Planning/Guidance During Week 7 (3rd Period), the first of two main tasks for 2D Path Planning/Guidance was completed.

Read More
Week 7 (4th Period)

Week 7 (4th Period)

  • António Morais
  • 4th Period - Weekly Progress

Final Tests Last week, the team expressed the intention of performing more trials for each type of test and improving the congruency of the environments.

Read More