Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
Signed-off-by: Daisuke Sato <[email protected]>
  • Loading branch information
daisukes committed Apr 10, 2024
1 parent 0088f09 commit abb58c9
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 20 deletions.
7 changes: 7 additions & 0 deletions .github/linters/.python-lint
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[MASTER]

# Use multiple processes to speed up Pylint.
jobs=0

[FORMAT]
max-line-length=200
8 changes: 8 additions & 0 deletions .github/workflows/super-linter.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,11 @@ jobs:
env:
# To report GitHub Actions status checks
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# MULTI_STATUS: false
# DEFAULT_BRANCH: ros2
VALIDATE_EDITORCONFIG: false
VALIDATE_PYTHON_PYLINT: false
VALIDATE_CHECKOV: false
VALIDATE_DOCKERFILE_HADOLINT: false
VALIDATE_NATURAL_LANGUAGE: false
VALIDATE_MARKDOWN: false
40 changes: 20 additions & 20 deletions doc/customization.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
## Build own cabot driver for your robot

- This repository uses `cabot-drivers` and `cabot-description` repositories for managing hardware components and describing the robot
- these repositories will be imported by `./setup-dependency.sh` script which uses `vcs` command to import repos described in `dependency.repos` files
- `cabot-navigation` repo also has dependency to `cabot-description` which is used for gazebo simulation
- these repositories will be imported by `./setup-dependency.sh` script which uses `vcs` command to import repos described in `dependency.repos` files
- `cabot-navigation` repo also has dependency to `cabot-description` which is used for gazebo simulation
- You can modify those repositories and this `cabot` repos to build your own cabot-navigation compatible robot
- simplest way is to fork those repositories to your own space, and modify `dependency.repos` to points to your repo
- make sure all dependency.repos points to your forked repos
- you may use `./setup-dependency.sh -c` to remove cloned repo first then run `./setup-dependency.sh` to clone correct one
```
- simplest way is to fork those repositories to your own space, and modify `dependency.repos` to points to your repo
- make sure all dependency.repos points to your forked repos
- you may use `./setup-dependency.sh -c` to remove cloned repo first then run `./setup-dependency.sh` to clone correct one
```text
- cabot
- dependency.repos <- modify
- cabot-common
Expand All @@ -29,13 +29,13 @@
### requirements

- define own `CABOT_MODEL` for example `cabotX-1`
- `CABOT_MAJOR` will be first 6 letters of your `CABOT_MODEL` (i.e., `cabot-X`)
- `CABOT_MAJOR` will be first 6 letters of your `CABOT_MODEL` (i.e., `cabot-X`)
- `cabot-descrption/cabot_description/robots/{CABOT_MODEL}.urdf.xacro.xml` (i.e., `cabotX-1.urdf.xacro.xml`)
- this file will be used in `cabot-drivers` (pyshical robot) and `cabot-navigation` (gazebo simulation)
- please refer to existing URDF descriptions and check [README of cabot-description](https://github.com/CMU-cabot/cabot-description)
- this file will be used in `cabot-drivers` (pyshical robot) and `cabot-navigation` (gazebo simulation)
- please refer to existing URDF descriptions and check [README of cabot-description](https://github.com/CMU-cabot/cabot-description)
- cabot-drivers will launch `cabot_base` `{CABOT_MAJOR}.launch.py` (i.e., `cabotX.launch.py)
- you can modify launch script at `cabot-drivers/script/launch_driver.sh`
- refers to the [README of cabot-drivers](https://github.com/CMU-cabot/cabot-drivers) to see required servies/topics
- you can modify launch script at `cabot-drivers/script/launch_driver.sh`
- refers to the [README of cabot-drivers](https://github.com/CMU-cabot/cabot-drivers) to see required servies/topics

## Build own cabot site (map) for your environment
- cabot site package
Expand All @@ -49,7 +49,7 @@
- localization map/data and static map images made for gazebo worlds
- menu configuration and i18n strings
- Directory structure
```
```text
cabot_site/
├ config
├ i18n
Expand Down Expand Up @@ -90,19 +90,19 @@
- Procedure
- [build docker images](../README.md#build-docker-images)
- start scannning and walk
```
$ ./mapping-launch.sh -o TEST1 -e # use ESP32 for IMU with prefix TEST1
$ ./mapping-launch.sh -o TEST2 -x # use XSENS for IMU with prefix TEST2
$ ./mapping-launch.sh -o TEST3 -a # use Arduino for IMU with prefix TEST3
```bash
./mapping-launch.sh -o TEST1 -e # use ESP32 for IMU with prefix TEST1
./mapping-launch.sh -o TEST2 -x # use XSENS for IMU with prefix TEST2
./mapping-launch.sh -o TEST3 -a # use Arduino for IMU with prefix TEST3
```
- these commands record topics into a bag file for post processing
- the bag file started with the prefix you specified can be found under docker/home/recordings
- run post processes the bag file (would be better to use PC with at least 6 core and 16GB)
```
$ ./mapping-launch.sh -p <bag file>
$ ./mapping-launch.sh -p <bag file> -w # if the bag file is more than a few minitues, this option would be better
$ ./mapping-launch.sh -p <bag file> -w -n # the script will not skip previously completed tasks
```bash
./mapping-launch.sh -p <bag file>
./mapping-launch.sh -p <bag file> -w # if the bag file is more than a few minitues, this option would be better
./mapping-launch.sh -p <bag file> -w -n # the script will not skip previously completed tasks
```
- post processes consist of 1) converting packets topics to pointcloud topics 2) running cartographer for SLAM 3) making a pgm image file from cartographer submaps
- you can find the result under docker/home/post_process (the specified bag file will be copied here)
Expand Down

0 comments on commit abb58c9

Please sign in to comment.