Roboter-Umgebung (Robot Environment)¶
Ein umfassendes Python-Framework für robotergestützte Pick-and-Place-Operationen mit visionsbasierter Objekterkennung und Manipulationsfähigkeiten.
Die Roboter-Umgebung ist ein modulares Python-Framework, das die Steuerung von Roboterarmen für präzise Pick-and-Place-Aufgaben automatisiert. Durch die Integration von KI-basierter Objekterkennung und fortschrittlichem Workspace-Management können Roboter wie der Niryo Ned2 oder WidowX Objekte unabhängig identifizieren und manipulieren.
Hauptmerkmale¶
- 🤖 Multi-Roboter-Unterstützung - Modulare Architektur zur Unterstützung von Niryo Ned2 und WidowX Roboterarmen.
- 👁️ Visionsbasierte Objekterkennung - Integration verschiedener Detektionsmodelle über vision_detect_segment.
- 🗺️ Workspace-Management - Flexible Workspace-Definition mit Koordinatentransformation von Kamera zu Welt über robot_workspace.
- 📡 Redis-Kommunikation - Effizientes Image-Streaming und Objektdatenaustausch via Redis über redis_robot_comm.
- 🔊 Text-to-Speech - Natürliches Sprachfeedback mit text2speech.
- 🧵 Thread-sichere Operationen - Gleichzeitige Kamera-Updates und Robotersteuerung mit korrektem Locking.
- 🎮 Simulationsunterstützung - Kompatibel mit realen Robotern und der Gazebo-Simulation.
- 💾 Objektspeicher-Management - Intelligente Verfolgung erkannter Objekte mit Workspace-bezogenen Updates.
Schnellstart¶
from robot_environment.environment import Environment
import time
# Umgebung für Niryo-Roboter initialisieren
env = Environment(
el_api_key="ihr_elevenlabs_key",
use_simulation=False,
robot_id="niryo",
verbose=True
)
# Zur Beobachtungspose bewegen
env.robot_move2home_observation_pose()
time.sleep(2)
# Objekte erkennen
robot = env.robot()
success = robot.pick_place_object(
object_name="pencil",
pick_coordinate=[-0.1, 0.01],
place_coordinate=[0.1, 0.11]
)
if success:
print("Aufgabe abgeschlossen!")
env.cleanup()
Installation¶
Stellen Sie sicher, dass ein Redis-Server läuft: