fix(module2): use 6x6 grid in simulator
This commit is contained in:
@@ -92,8 +92,9 @@ python3 module2/module_b.py --target 14 --sim
|
||||
python3 module2/module_b.py --target 14
|
||||
```
|
||||
|
||||
По умолчанию используется поле 5×5, ID 0–24 и шаг 1 м. Закрытые ячейки
|
||||
передаются через `--blocked`:
|
||||
Без `--sim` используется площадочное поле 5×5, ID 0–24. Флаг `--sim`
|
||||
включает старый Webots 6×6, ID 0–35. Закрытые ячейки передаются через
|
||||
`--blocked`:
|
||||
|
||||
```bash
|
||||
python3 module2/module_b.py --target 14 --blocked 7 8 13 --sim
|
||||
@@ -103,6 +104,7 @@ python3 module2/module_b.py --target 14 --blocked 7 8 13 --sim
|
||||
|
||||
- `--target` — целевой ArUco ID;
|
||||
- `--blocked` — закрытые ячейки;
|
||||
- `--sim` — профиль симулятора 6×6;
|
||||
- `--rows`, `--columns`, `--spacing` — геометрия сетки;
|
||||
- `--speed` — линейная скорость, по умолчанию 0.35 м/с, предел RMC2 0.5 м/с;
|
||||
- `--angular` — скорость поворота, по умолчанию 0.6 рад/с;
|
||||
@@ -128,6 +130,7 @@ workspace RMC2 управляется через `/RMC2/cmd_vel`; Nav2 наст
|
||||
|
||||
```bash
|
||||
python3 module2/module_b.py --target 14 --start 0 --dry-run
|
||||
python3 module2/module_b.py --target 8 --start 0 --sim --dry-run
|
||||
python3 module2/module_b.py --target 24 --start 6 --blocked 7 8 --dry-run
|
||||
```
|
||||
|
||||
|
||||
+8
-3
@@ -98,8 +98,8 @@ def shortest_path(start, goal, rows, columns, blocked, forbidden=()):
|
||||
def arguments():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--target", type=int, required=True)
|
||||
parser.add_argument("--rows", type=int, default=ROWS)
|
||||
parser.add_argument("--columns", type=int, default=COLUMNS)
|
||||
parser.add_argument("--rows", type=int)
|
||||
parser.add_argument("--columns", type=int)
|
||||
parser.add_argument("--spacing", type=float, default=SPACING)
|
||||
parser.add_argument("--blocked", type=int, nargs="*", default=[])
|
||||
parser.add_argument("--speed", type=float, default=MAX_SPEED)
|
||||
@@ -107,11 +107,16 @@ def arguments():
|
||||
parser.add_argument("--stop-distance", type=float, default=STOP_DISTANCE)
|
||||
parser.add_argument("--tolerance", type=float, default=TOLERANCE)
|
||||
parser.add_argument("--scan-topic", default="/RMC2/scan_front")
|
||||
parser.add_argument("--sim", action="store_true")
|
||||
parser.add_argument("--sim", action="store_true", help="Симулятор с сеткой 6x6")
|
||||
parser.add_argument("--dry-run", action="store_true")
|
||||
parser.add_argument("--start", type=int, default=0)
|
||||
args = parser.parse_args()
|
||||
|
||||
if args.rows is None:
|
||||
args.rows = 6 if args.sim else ROWS
|
||||
if args.columns is None:
|
||||
args.columns = 6 if args.sim else COLUMNS
|
||||
|
||||
count = args.rows * args.columns
|
||||
if args.rows < 1 or args.columns < 1:
|
||||
parser.error("rows и columns должны быть больше нуля")
|
||||
|
||||
Reference in New Issue
Block a user