Colección de código Python y libro de texto sobre algoritmos de robótica que abarcan localización, mapeo, SLAM, planificación de rutas y control.
hanruihua/ir-sim
Un simulador de robots ligero, basado en Python, para navegación, control y aprendizaje, configurable mediante archivos YAML.
- Estrellas
- 1,168
- Forks
- 151
- Issues abiertos
- 4
- Último commit
- hace 5 días
¿Qué es?
IR-SIM es un simulador de robots en Python orientado a la investigación en navegación, control y aprendizaje robótico. Los escenarios, robots, sensores y obstáculos se definen en archivos YAML, por lo que la mayoría de las configuraciones requieren poco o ningún código. Incluye detección de colisiones y muestra los resultados con un visor basado en Matplotlib.
El simulador admite robots con tracción diferencial, omnidireccionales y con dirección Ackermann, además de sensores 2D LiDAR, FMCW LiDAR, de contacto y de campo de visión. Entre los comportamientos se incluyen la búsqueda directa de objetivos, la evitación de colisiones multiagente mediante RVO y ORCA, y peatones con el modelo de fuerza social. Los objetos pueden ser círculos, rectángulos, polígonos, cadenas de líneas o mapas de rejilla binarios; además, un modo de contacto de cuerpos rígidos permite empujar y apilar objetos.
El paquete se instala con pip y requiere Python 3.10 o posterior. Está pensado para usos académicos y educativos, donde la creación rápida de prototipos de algoritmos de planificación y aprendizaje es más importante que la fidelidad física alta.
Funciones clave
- 01Robots con cinemática diferencial, omnidireccional y Ackermann
- 02Configuración de escenarios mediante YAML, con poco o ningún código
- 03Sensores integrados de LiDAR, contacto y campo de visión
- 04Comportamientos RVO, ORCA y de modelo de fuerza social para escenas multiagente
- 05Renderizado ligero con Matplotlib para depuración
Casos de uso
- Crear prototipos de algoritmos de navegación o evitación de colisiones antes de probarlos en hardware
- Entrenar y evaluar agentes de aprendizaje por refuerzo para la navegación robótica
- Enseñar cursos de robótica con escenarios simulados reproducibles
- Probar comportamientos de múltiples robots o de multitudes de peatones
Inicio rápido
- 1
Instala el paquete desde PyPI
pip install ir-sim - 2
Guarda el YAML de ejemplo como robot_world.yaml y ejecuta el script de inicio rápido de Python
Antes de usarlo
- Requiere Python 3.10 o posterior.
- Utiliza renderizado basado en Matplotlib, pensado para depuración ligera y no para gráficos de alta fidelidad.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es ir-sim?
- Un simulador de robots ligero, basado en Python, para navegación, control y aprendizaje, configurable mediante archivos YAML. IR-SIM es un simulador de robots en Python orientado a la investigación en navegación, control y aprendizaje robótico. Los escenarios, robots, sensores y obstáculos se definen en archivos YAML, por lo que la mayoría de las configuraciones requieren poco o ningún código. Incluye detección de colisiones y muestra los resultados con un visor basado en Matplotlib.
- ¿ir-sim es gratuito? ¿Qué licencia tiene?
- ir-sim es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿ir-sim sigue mantenido?
- Mantenimiento activo. El último commit de ir-sim fue el 1 nov 2026.
- ¿Para qué puedo usar ir-sim?
- Crear prototipos de algoritmos de navegación o evitación de colisiones antes de probarlos en hardware Entrenar y evaluar agentes de aprendizaje por refuerzo para la navegación robótica Enseñar cursos de robótica con escenarios simulados reproducibles Probar comportamientos de múltiples robots o de multitudes de peatones
- ¿Cómo se instala ir-sim?
- Instala el paquete desde PyPI: pip install ir-sim Guarda el YAML de ejemplo como robot_world.yaml y ejecuta el script de inicio rápido de Python
- ¿Dónde consigo ir-sim?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/hanruihua/ir-sim
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Simulador de conducción ligero en Python para aprendizaje por refuerzo e investigación sobre conducción autónoma, con simulación de sensores y entornos al estilo Gymnasium.
Entornos de Gymnasium basados en PyBullet para entrenar controladores de aprendizaje por refuerzo para cuadricópteros, con uno o varios agentes.
Código de ejemplo en Python y guías sobre algoritmos de control de vehículos autónomos, como recurso de estudio para principiantes.
Framework de navegación para ROS 2 que permite a robots móviles planificar rutas, seguirlas y evitar obstáculos mediante un stack basado en árboles de comportamiento.
Colección de entornos de conducción simulados compatibles con Gymnasium para entrenar y probar agentes de conducción autónoma y toma de decisiones.