Skip to content

Commit a5fc2d0

Browse files
AtsushiSakaiAtsushi Sakai
andauthored
update getting started (#1134)
Co-authored-by: Atsushi Sakai <[email protected]>
1 parent 2b9cc06 commit a5fc2d0

File tree

1 file changed

+90
-4
lines changed

1 file changed

+90
-4
lines changed

docs/modules/0_getting_started/2_how_to_run_sample_codes_main.rst

Lines changed: 90 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,21 @@
33
How to run sample codes
44
-------------------------
55

6-
1. Clone this repo and go into dir.
6+
In this chapter, we will explain the setup process for running each sample code
7+
in PythonRobotics and describe the contents of each directory.
8+
9+
Steps to setup and run sample codes
10+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
11+
12+
1. Install `Python 3.12.x`_
13+
14+
Note that older versions of Python3 might work, but we recommend using
15+
the specified version, because the sample codes are only tested with it.
16+
17+
2. If you prefer to use conda for package management, install
18+
Anaconda or Miniconda to use `conda`_ command.
19+
20+
3. Clone this repo and go into dir.
721

822
.. code-block::
923
@@ -12,7 +26,10 @@ How to run sample codes
1226
>$ cd PythonRobotics
1327
1428
15-
2. Install the required libraries.
29+
4. Install the required libraries.
30+
31+
We have prepared requirements management files for `conda`_ and `pip`_ under
32+
the requirements directory. Using these files makes it easy to install the necessary libraries.
1633

1734
using conda :
1835

@@ -27,6 +44,75 @@ using pip :
2744
>$ pip install -r requirements/requirements.txt
2845
2946
30-
3. Execute python script in each directory.
47+
5. Execute python script in each directory.
48+
49+
For example, to run the sample code of `Extented Kalman Filter` in the
50+
`localization` directory, execute the following command:
51+
52+
.. code-block::
53+
54+
>$ cd localization/extended_kalman_filter
55+
56+
>$ python extended_kalman_filter.py
57+
58+
Then, you can see this animation of the EKF algorithm based localization:
59+
60+
.. image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Localization/extended_kalman_filter/animation.gif
61+
62+
Please refer to the `Directory structure`_ section for more details on the contents of each directory.
63+
64+
6. Add star to this repo if you like it 😃.
65+
66+
.. _`Python 3.12.x`: https://www.python.org/
67+
.. _`conda`: https://docs.conda.io/projects/conda/en/stable/user-guide/install/index.html
68+
.. _`pip`: https://pip.pypa.io/en/stable/
69+
.. _`the requirements directory`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/requirements
70+
71+
.. _`Directory structure`:
72+
73+
Directory structure
74+
~~~~~~~~~~~~~~~~~~~~
75+
76+
The top-level directory structure of PythonRobotics is as follows:
77+
78+
Sample codes directories:
79+
80+
- `AerialNavigation`_ : the sample codes of aerial navigation algorithms for drones and rocket landing.
81+
- `ArmNavigation`_ : the sample codes of arm navigation algorithms for robotic arms.
82+
- `Localization`_ : the sample codes of localization algorithms.
83+
- `Bipedal`_ : the sample codes of bipedal walking algorithms for legged robots.
84+
- `Control`_ : the sample codes of control algorithms for robotic systems.
85+
- `Mapping`_ : the sample codes of mapping or obstacle shape recognition algorithms.
86+
- `PathPlanning`_ : the sample codes of path planning algorithms.
87+
- `PathTracking`_ : the sample codes of path tracking algorithms for car like robots.
88+
- `SLAM`_ : the sample codes of SLAM algorithms.
89+
90+
Other directories:
91+
92+
- `docs`_ : This directory contains the documentation of PythonRobotics.
93+
- `requirements`_ : This directory contains the requirements management files.
94+
- `tests`_ : This directory contains the unit test files.
95+
- `utils`_ : This directory contains utility functions used in some sample codes in common.
96+
- `.github`_ : This directory contains the GitHub Actions configuration files.
97+
- `.circleci`_ : This directory contains the CircleCI configuration files.
98+
99+
The structure of this document is the same as that of the sample code
100+
directories mentioned above.
101+
For more details, please refer to the :ref:`How to read this textbook` section.
102+
31103

32-
4. Add star to this repo if you like it 😃.
104+
.. _`AerialNavigation`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/AerialNavigation
105+
.. _`ArmNavigation`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/ArmNavigation
106+
.. _`Localization`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Localization
107+
.. _`Bipedal`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Bipedal
108+
.. _`Control`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Control
109+
.. _`Mapping`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/Mapping
110+
.. _`PathPlanning`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/PathPlanning
111+
.. _`PathTracking`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/PathTracking
112+
.. _`SLAM`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/SLAM
113+
.. _`docs`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/docs
114+
.. _`requirements`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/requirements
115+
.. _`tests`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/tests
116+
.. _`utils`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/utils
117+
.. _`.github`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/.github
118+
.. _`.circleci`: https://github.com/AtsushiSakai/PythonRobotics/tree/master/.circleci

0 commit comments

Comments
 (0)