This commit is contained in:
2026-07-29 20:38:30 +02:00
parent c34449aac5
commit bc84f7e8eb
3 changed files with 10 additions and 90 deletions
+9 -9
View File
@@ -4,15 +4,7 @@
**Purpose**
- **Overview**: JackBot is a Python project for controlling and simulating a six-legged (hexapod) robot. It computes foot trajectories, runs inverse kinematics against a URDF model, and sends joint commands to either a hardware controller (ESP32 / Arduino) or a PyBullet simulation.
**Quick Start**
- **Simulation**: enable the simulator in `config.py` by setting `sim = True`, then run:
```bash
python3 main.py
```
- **Hardware**: set `sim = False` in `config.py` and choose `arduinoConnection = True` or provide your ESP32 settings. Verify `port`, `baudrate`, `esp32_ip`, and `esp32_port` in `config.py`.
**Dependencies**
**Setup Dependencies and Virtual Enviroment**
- **Python packages**: At minimum the project uses `numpy`, `pygame`, `ikpy`, `pybullet`, `pyserial`, and `matplotlib`.
- **Install** (recommended inside a venv):
@@ -22,6 +14,14 @@ source .venv/bin/activate
pip install numpy pygame ikpy pybullet pyserial matplotlib
```
**Quick Start**
- **Simulation**: enable the simulator in `config.py` by setting `sim = True`, then run:
```bash
python3 main.py
```
- **Hardware**: set `sim = False` in `config.py` and choose `arduinoConnection = True` or provide your ESP32 settings. Verify `port`, `baudrate`, `esp32_ip`, and `esp32_port` in `config.py`.
**Project structure (key files)**
- **Entry point**: [main.py](main.py) — starts the controller and state loop.
- **Controller**: [Controller.py](Controller.py) — joystick input and `ControlIntent` updates.