No description
  • Python 79.8%
  • HTML 13.5%
  • CSS 6.1%
  • Nix 0.6%
Find a file
2026-11-06 13:08:08 +01:00
docs (+) full-view sensor mode for all lease resolutions (OV5647 1296x972 at 30 FPS) 2026-11-06 10:49:19 +00:00
fleet_manager (c) keep success msg 2026-11-06 13:08:08 +01:00
licenses Prepare SPARK-E fleet platform for real and simulated robotics 2026-10-30 01:02:21 +00:00
tests (f) notifications (+) random selection 2026-11-06 13:01:53 +01:00
.env.example (+) releasen way / security fixes / adapted to intsys-car-v1 hardware pkg 2026-10-30 09:35:05 +00:00
.gdignore Prepare SPARK-E fleet platform for real and simulated robotics 2026-10-30 01:02:21 +00:00
.gitignore Prepare SPARK-E fleet platform for real and simulated robotics 2026-10-30 01:02:21 +00:00
flake.lock Prepare SPARK-E for public HTTPS checkouts 2026-10-30 08:56:07 +00:00
flake.nix (+) host/port configurable in mise task 2026-10-30 12:28:46 +01:00
LICENSE Prepare SPARK-E fleet platform for real and simulated robotics 2026-10-30 01:02:21 +00:00
MANIFEST.in Prepare SPARK-E fleet platform for real and simulated robotics 2026-10-30 01:02:21 +00:00
mise.toml (+) host/port configurable in mise task 2026-10-30 12:28:46 +01:00
PUBLISHING.md Prepare SPARK-E for public HTTPS checkouts 2026-10-30 08:56:07 +00:00
pyproject.toml (f) calibration fixes 2026-10-30 12:28:03 +01:00
README.md (+) releasen way / security fixes / adapted to intsys-car-v1 hardware pkg 2026-10-30 09:35:05 +00:00
THIRD_PARTY_NOTICES.md Prepare SPARK-E fleet platform for real and simulated robotics 2026-10-30 01:02:21 +00:00

SPARK-E

Smart Platform for API-controlled Robotics, Kinematics & Education

Gemeinsame Fahrzeugverwaltung für reale und simulierte Roboter im Unterricht: Anmeldung, Online-Status, exklusive Team-Belegung, Schülerportal und Lehrer-Dashboard. Kamera und Steuerung laufen direkt zwischen Fahrzeug-Agent und Schülerprogramm über ZeroMQ.

Start

Python 3.11 oder neuer:

pip install -e .
export FLEET_ADMIN_TOKEN='eigenes-admin-token'
export FLEET_PROVIDER_TOKEN='eigenes-agent-token'
spark-e

Portal: http://localhost:8080 · Dashboard: /admin · API-Dokumentation: /docs

Variable Standard Zweck
WEB_HOST / WEB_PORT 0.0.0.0 / 8080 HTTP-Server
FLEET_ADMIN_TOKEN beim Start erzeugt und geloggt Freigeben und Positionsreset
FLEET_PROVIDER_TOKEN beim Start erzeugt und geloggt Anmeldung der Fahrzeug-Agenten
FLEET_CLASS_TOKEN leer (offen) Zugangscode für das Schülerportal
FLEET_PROVIDER_TIMEOUT_SEC 15 Offline nach fehlendem Heartbeat

Ein Serverprozess; Bestand und Belegungen liegen im Arbeitsspeicher. Nach einem Neustart melden sich Agenten erneut an, alte Belegungen werden freigegeben.

Entwicklung mit Nix / mise

.env.example nach .env kopieren und SSH-Schlüssel, Git-Identität sowie Tokens setzen. mise run vm startet die eigene MicroVM; Verbindung mit ssh -p 2200 dev@127.0.10.19. Im Gast: mise run run. Das Portal ist auf dem Host unter http://127.0.10.19:8080 erreichbar. Die Flake verwendet denselben öffentlichen nix-dev-sandbox-Input wie der Simulator.

Ohne VM: nix develop oder mise run setup. Weitere Befehle: mise run dev, mise run test, mise run check, mise run build, mise run agent -- ….

Fahrzeuge anbinden

Der Godot-Adapter liegt im Simulator-Repository und meldet standardmäßig 16 virtuelle Fahrzeuge. SPARK-E selbst benötigt kein Godot.

Auf einem realen PiCar-X (venv mit --system-site-packages für picamera2/lgpio):

pip install -e '.[hardware]'
export FLEET_URL='ws://fleet-server:8080'
export FLEET_PROVIDER_TOKEN='gleiches-agent-token-wie-am-server'
intsys-vehicle-agent --id real-01 --name 'PiCar-X 01' \
  --driver fleet_manager.hardware:IntsysHardwareBackend

Die virtuelle intsys_car_v1-Bibliothek des Simulators gehört nicht auf reale Fahrzeuge. Andere Fahrzeuge implementieren VehicleBackend. Hardware und Schülerprotokoll: intsys-car-v1-Standard · Virtuelle und reale Geräte verbinden · API und Treibervertrag · Tests

Lizenz

Eigener Code: GPL-3.0-only, siehe LICENSE. Drittanbieterdateien behalten ihre Lizenzen: Hinweise.