-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(docs_ws): Update documentation.
- Loading branch information
1 parent
9deed83
commit 77bb09d
Showing
22 changed files
with
300 additions
and
26 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
.. _codebase_overview_link: | ||
|
||
CodeBase Overview | ||
================= | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
Hydra Workspace | ||
=============== | ||
|
||
.. note:: | ||
|
||
This workspace is primarily adapted from Hydra. | ||
For more detailed information, please refer to the `original github repository <https://github.com/MIT-SPARK/Hydra>`_ or read the `paper <https://arxiv.org/abs/2201.13360>`_. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
Kobuki Workspace | ||
================ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
LLM Query Workspace | ||
=================== |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
Realsense Workspace | ||
=================== |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
ROS1 Bridge Workspace | ||
===================== |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
VLP-16 LiDAR Workspace | ||
======================= |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,22 @@ | ||
Demo | ||
==== | ||
|
||
Youtube | ||
------- | ||
Gazebo | ||
------- | ||
|
||
.. raw:: html | ||
|
||
<iframe width="615" height="352" src="https://www.youtube.com/embed/1j9gkKwj_IY" | ||
title="Demo for Pervasive AI Developer Contest with AMD" frameborder="0" | ||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" | ||
referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe> | ||
|
||
Habitat Sim | ||
------------------ | ||
|
||
.. raw:: html | ||
|
||
<iframe width="615" height="352" src="https://www.youtube.com/embed/fI6xyzNm0TY" | ||
title="【Hololive 歌曲 / Gawr Gura 唱歌】Rick Astley - Never Gonna Give You Up「中文字幕」" frameborder="0" | ||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" | ||
referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
Devcontainer | ||
============ | ||
|
||
.. note:: | ||
|
||
For more information about installation, please visit the official `devcontainer website <https://code.visualstudio.com/docs/devcontainers/tutorial#_install-the-extension>`_. | ||
|
||
Press the link below to install the Devcontainer extension: | ||
|
||
`Install the Devcontainer extension <vscode:extension/ms-vscode-remote.remote-containers>`_ | ||
|
||
Or you can install it from the Visual Studio Code Marketplace: | ||
|
||
.. image:: ./images/devcontainer.png | ||
:align: center | ||
:alt: Devcontainer Extension |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
Docker | ||
====== | ||
|
||
.. note:: | ||
|
||
For more information about installation, please visit the official `docker website <https://docs.docker.com/engine/install/ubuntu/>`_. | ||
|
||
To ensure better maintainability of our code, we have packaged all the necessary packages and dependencies into Docker and split it into multiple workspaces based on functionality. | ||
Normally, you only need to navigate to the designated workspace and use `docker compose up` to complete the entire environment setup. | ||
|
||
Follow these steps to install Docker and Docker Compose on your system: | ||
|
||
|
||
1. **Update your package index**:: | ||
|
||
sudo apt-get update | ||
|
||
2. **Install required packages**:: | ||
sudo apt install apt-transport-https ca-certificates curl software-properties-common | ||
|
||
3. **Add the Docker GPG key**:: | ||
sudo install -m 0755 -d /etc/apt/keyrings | ||
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc | ||
sudo chmod a+r /etc/apt/keyrings/docker.asc | ||
|
||
4. **Add the Docker repository**:: | ||
|
||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ | ||
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ | ||
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null | ||
|
||
5. **Update your package index again**:: | ||
|
||
sudo apt-get update | ||
|
||
6. **Install Docker**:: | ||
|
||
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin | ||
|
||
7. **Verify the installation**:: | ||
|
||
sudo docker --version |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
ROS2 Humble | ||
=========== | ||
|
||
.. note:: | ||
|
||
For more information about installation, please visit the official `ROS2 website <https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debs.html>`_. | ||
|
||
Please note that we have already installed ROS 2 Humble within the Docker environment. | ||
Generally, you do not need to install ROS 2 yourself. You will only need to manually install ROS 2 in a few exceptional cases, | ||
such as when you want to add features to our codebase but have your own Dockerfile. | ||
|
||
Follow these steps to install ROS 2 Humble on your system: | ||
|
||
1. **Set Up Your System** | ||
Ensure that your system is up to date:: | ||
|
||
sudo apt update | ||
sudo apt upgrade | ||
sudo apt install -y software-properties-common | ||
sudo add-apt-repository universe | ||
|
||
2. **Add the ROS2 GPG Key** | ||
Download and add the GPG key for the ROS 2 repository:: | ||
|
||
sudo apt install -y curl | ||
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg | ||
|
||
3. **Add the ROS 2 Repository** | ||
Add the ROS 2 repository to your sources list:: | ||
|
||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null | ||
|
||
|
||
4. **Install ROS 2 Humble** | ||
Update your package list and install the full desktop version of ROS 2 Humble:: | ||
|
||
sudo apt update | ||
sudo apt upgrade | ||
sudo apt install ros-humble-desktop | ||
|
||
|
||
5. **Set Up Environment Variables** | ||
Add the ROS 2 environment variables to your shell:: | ||
|
||
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc | ||
source ~/.bashrc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
Quick start | ||
=========== | ||
|
||
Before you start, make sure you have read the :ref:`codebase_overview_link` section. | ||
|
||
1. Clone the repository ... | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
ROS2 | ||
============ | ||
|
||
For more information about ROS2, please visit the official ROS2 website: `ROS2 Humble <https://docs.ros.org/en/humble/index.html>`_. | ||
|
||
What is ROS? | ||
------------ | ||
|
||
ROS (Robot Operating System) is a flexible framework designed to build robot applications. | ||
It enables developers to create complex robotics systems by providing tools and libraries for building, testing, and deploying robotic software. | ||
As an evolution of ROS (ROS1), ROS2 introduces major improvements, focusing on scalability, real-time performance, and improved communication mechanisms. | ||
|
||
Why Use ROS2? | ||
------------- | ||
|
||
ROS2 offers a robust platform for those developing both simple and complex robot applications. | ||
It is especially useful in environments that require distributed systems, real-time control, or that use heterogeneous hardware. | ||
|
||
Key reasons to adopt ROS2 include: | ||
|
||
- **Cross-platform compatibility**: Works on Linux, Windows, and macOS. | ||
- **Modularity**: Provides a component-based architecture, allowing developers to reuse existing modules and customize them for their needs. | ||
- **Scalability**: Capable of handling large-scale distributed systems across multiple machines. | ||
- **Real-time capabilities**: ROS2 is designed with real-time communication in mind, enabling more predictable and timely responses. | ||
- **Flexible communication layers**: ROS2 supports different communication middleware, such as DDS (Data Distribution Service), making it more versatile for various applications. | ||
|
||
ROS2 is ideal for robotics researchers, hobbyists, and companies building robotic systems in diverse industries such as agriculture, healthcare, logistics, and manufacturing. | ||
It is particularly well-suited for: | ||
|
||
- Developers building real-time systems. | ||
- Teams working with distributed robotics applications. | ||
- Anyone needing a scalable platform that supports multiple robots and machines working in sync. | ||
|
||
Core Features of ROS2 | ||
---------------------- | ||
|
||
1. **Node-based Architecture** | ||
ROS2 applications are divided into *nodes*, where each node performs a specific task. | ||
These nodes communicate with each other using topics, services, or actions, providing a clear and maintainable structure for building complex systems. | ||
|
||
2. **Data Distribution Service (DDS) for Communication** | ||
ROS2 uses DDS, a standardized middleware, to ensure reliable communication between nodes, | ||
whether they are on the same device or distributed across multiple machines. | ||
DDS offers better performance for real-time systems and is capable of handling high-volume data transfers, crucial for robotics applications. | ||
|
||
3. **Real-Time Systems** | ||
Unlike ROS1, ROS2 can meet real-time constraints, making it suitable for applications that require fast and deterministic responses, | ||
such as autonomous vehicles, drones, and industrial robots. | ||
|
||
4. **Multi-Robot Support** | ||
ROS2 is designed to support multiple robots operating together in the same environment. | ||
This is achieved by leveraging DDS, which allows communication across multiple networks, making it easy to scale up robot fleets. | ||
|
||
Basic ROS2 CLI Commands | ||
------------------------ | ||
|
||
To interact with ROS2, you can use several command-line interface (CLI) commands. Here are some fundamental commands to get you started: | ||
|
||
1. **Listing Topics** | ||
To see all active topics: ``ros2 topic list`` | ||
|
||
2. **Echoing Topic Data** | ||
To view messages published on a specific topic: ``ros2 topic echo <topic_name>`` | ||
|
||
3. **Publishing to a Topic** | ||
To publish messages to a specific topic: ``ros2 topic pub <topic_name> <message_type> "<message_data>""`` | ||
|
||
4. **Launching the Node by Launch File** | ||
To start a set of nodes defined in a launch file: ``ros2 launch <package_name> <launch_file>`` | ||
|
||
5. **Listing Nodes** | ||
To see all active nodes: ``ros2 node list`` | ||
|
||
6. **Inspecting Node Information** | ||
To get information about a specific node: ``ros2 node info <node_name>`` |