Semana 1: Primeros Pasos
Antes de comenzar con la Asignación #2 (como se detalla en las páginas que siguen), debes trabajar en las siguientes tareas en tus equipos durante el primer laboratorio de la Semana 1.
- Configurar el Paquete de ROS de tu Equipo
- Conocer los Robots
Las instrucciones a continuación te guiarán a través de estos primeros pasos clave.
Configurar el Paquete de ROS de tu Equipo¶
Como se discute en la Descripción General de la Asignación #2, todo lo que tu equipo entregue para esta asignación de laboratorio debe estar contenido dentro de un único paquete de ROS. Dentro de este desarrollarás todos los nodes necesarios para hacer que un robot de simulación complete cada una de las tareas de la asignación, así como alguna documentación para describir tu enfoque. El equipo docente evaluará cada tarea a través de archivos de lanzamiento que también debes proporcionar dentro de tu paquete.
Sin embargo, el primer paso es crear el Paquete de ROS de tu equipo.
El paquete de tu equipo deberá estar alojado en GitHub, por lo que cada miembro del equipo necesitará una cuenta de GitHub. Dirígete a GitHub y crea una cuenta si aún no tienes una1.
Trabajar con Git y GitHub
Trabajarás con Git y GitHub bastante extensamente durante la Asignación #2. Con suerte, muchos de vosotros ya estaréis bastante familiarizados con estas herramientas, pero si no, os recomendamos encarecidamente que reviseis este curso sobre Git y GitHub.
Crear el Repositorio del Paquete de tu Equipo (en GitHub)¶
Nomina a solo un miembro de tu equipo para hacer esta parte.
- Asegúrate de haber iniciado sesión en tu cuenta de GitHub, luego ve al repositorio
ros2_pkg_template. -
Haz clic en el botón verde
Use this templatey luego seleccionaCreate a new repositorydel menú desplegable.Luego deberías ver una pantalla de Create a new repository.
-
El nombre de tu repositorio debe ser el siguiente:
... donde
XXdebe reemplazarse con tu número de equipo de la Asignación #2. Introduce esto en el cuadroRepository name.Si tu número de equipo es menor que 10: pon un cero antes del número, de modo que el número de equipo siempre tenga 2 dígitos de longitud, por ejemplo:
ros2_lab_equipo03para el Equipo 3ros2_lab_equipo08para el Equipo 8ros2_lab_equipo15para el Equipo 15
Importante
El nombre de tu repositorio debe coincidir exactamente con el formato anterior:
- Todos los caracteres deben estar en minúsculas
-
En
Configuration, seleccionaPrivatepara hacer el repositorio privado:Luego haz clic en el botón verde
Create repository. -
Serás dirigido a la página principal de tu repositorio. Desde aquí, haz clic en
Settings, luego enAccesshaz clic enCollaborators:(Es posible que se te solicite 2FA.)
-
En el área
Manage access, haz clic en el botón verdeAdd peopley agrega a los miembros del equipo docente según te indiquen. -
Finalmente, haz clic en el botón
Add peopley agrega al resto de los miembros de tu equipo como colaboradores de este repositorio también.
Registrar la URL de tu Paquete de ROS con el Equipo Docente¶
Habiendo creado tu paquete, deberás informarnos tu nombre de usuario de GitHub y la URL de tu repositorio de GitHub de equipo, para que podamos acceder a él y descargar tu trabajo cuando se acerquen las fechas de entrega.
Hay un formulario que debes completar (como equipo) para registrar tu paquete de ROS con nosotros para la Asignación #2. El formulario está disponible a través del enlace que te compartirá el equipo docente (también disponible en la plataforma del curso).
El miembro del equipo que creó el repositorio (en el paso anterior) debe completar este formulario ahora.
Warning
¡No hacer esto (y hacerlo correctamente) podría resultar en que recibas 0 puntos para las tareas de la asignación!
En algún momento dentro de las primeras semanas del curso se enviará un archivo hello.md a tu repositorio para confirmar que ha sido registrado correctamente.
Inicializar el Paquete de ROS de tu Equipo (Localmente)¶
Nomina también a solo un miembro de tu equipo para hacer esta parte.
Debes hacerlo desde dentro de tu propia instalación de ROS (o WSL-ROS2), en lugar de en la laptop de robótica que usarás para trabajar con los robots reales en el laboratorio.
-
En GitHub, regresa a la página principal de tu repositorio haciendo clic en la pestaña
<> Codeen la parte superior izquierda. -
Haz clic en el botón verde
Codey luego, del menú desplegable, haz clic en el botón para copiar la URL HTTPS remota de tu repositorio. -
Desde tu instalación local de ROS, abre una instancia de terminal y navega al directorio
srcdel Espacio de Trabajo de ROS: -
Clona tu repositorio aquí usando la URL HTTPS remota:
Luego se te pedirá que ingreses tu nombre de usuario de GitHub, seguido de una contraseña. ¡Esta contraseña no es la contraseña de tu cuenta de GitHub!
Warning
¡La contraseña de tu cuenta de GitHub no funcionará aquí! Necesitarás generar un token de acceso personal y usarlo en su lugar.
-
Navega al directorio del paquete usando el comando
cd:(...reemplazando
XXcon tu número de equipo de la Asignación #2.) -
Luego, ejecuta un script de inicialización para configurar tu paquete de ROS apropiadamente:
Configurar Git¶
A continuación, deberás asegurarte de que Git esté correctamente configurado en tu instalación local de ROS antes de hacer cualquier otra cosa.
-
Desde la misma instancia de terminal que antes, ejecuta los siguientes comandos para actualizar tus datos personales en el archivo de configuración global de Git en tu máquina:
...¡reemplazandotu_nombrecon tu nombre real! Por ejemplo:git config --global user.name "Juan García"...¡reemplazandotu_dirección_de_correocon tu dirección de correo real! -
Si usas el Sandbox del Laboratorio: tu configuración de Git se resetea al cerrar la sesión. Puedes exportar
.gitconfigjunto con tu código: haz clic derecho sobre él en VS Code → Descargar… y vuelve a subirlo en futuras sesiones.Si usas WSL-ROS2 en una máquina del laboratorio: no olvides ejecutar
wsl_ros backuppara guardar estos cambios en tu archivo de respaldo, para que siempre se restauren cuando ejecuteswsl_ros restoreen otra máquina.Note
¡Todos los miembros del equipo deberán hacer esta parte antes de interactuar con Git!
Independientemente de qué miembro del equipo esté configurando el paquete de ROS de tu equipo para comenzar, todos necesitaréis interactuar con Git para esta asignación, y por lo tanto deberíais cada uno configurar vuestras propias configuraciones de Git individuales (a través de los pasos anteriores) antes de trabajar individualmente en el paquete de ROS de tu equipo.
Publicar tu Paquete de ROS Local en GitHub¶
Nuevamente, solo un miembro de tu equipo necesita hacer esta parte.
Habiendo inicializado el paquete de ROS de tu equipo, ¡ya está listo para que comiences a llenarlo con código para las Tareas de la Asignación #2! Sin embargo, el primer paso es publicar los cambios realizados en el paso de inicialización (anterior) de vuelta en GitHub, para que todos en tu equipo estén trabajando desde el punto de partida correcto.
-
Desde la misma terminal que antes, usa el comando
git statuspara ver todos los cambios realizados en el repositorio durante el proceso de inicialización: -
Usa
git addpara preparar todos estos cambios para un commit inicial:Warning
¡No olvides el
.al final! -
Luego realiza el commit:
-
Finalmente, publica los cambios locales de vuelta al repositorio "remoto" en GitHub:
Luego se te pedirá que ingreses tu nombre de usuario y contraseña de GitHub nuevamente.
Recuerda
No es la contraseña de tu cuenta de GitHub... Usa el token de acceso personal que creaste anteriormente.
-
Todos los miembros del equipo deberían entonces poder clonar el repositorio remoto en sus propios Espacios de Trabajo de ROS (
cd ~/ros2_ws/src/ && git clone REMOTE_HTTPS_URL), hacer contribuciones y publicarlas de vuelta al repositorio remoto según sea necesario (usando sus propias credenciales de cuenta de GitHub y tokens de acceso personal).
Necesitarás copiar tu paquete de ROS a las Laptops de los Robots cuando trabajes en las tareas basadas en robots reales, lo cual cubriremos con más detalle más adelante.
Conocer los Robots Reales¶
La Asignación #2 involucra trabajo extenso con nuestros robots reales, y por lo tanto tendrás acceso a los robots durante cada sesión de laboratorio para que puedas trabajar en estas tareas como desees. Todos los detalles sobre cómo funcionan los robots, cómo ponerlos en marcha y comenzar a programarlos se pueden encontrar en la sección "Waffles" de este sitio del curso. Procede ahora de la siguiente manera (en tus equipos):
- A cada equipo se le ha asignado un robot específico. Cuando estés listo, habla con un miembro del equipo docente quien te proporcionará el robot que se te ha asignado.
-
Trabaja en cada página de la sección "Waffles" de este sitio (en orden):
- Lee sobre el hardware.
- Aprende cómo lanzar ROS y poner los robots en marcha.
- Trabaja en los Conceptos Básicos de Waffle (y ROS), que te ayudarán a comenzar y entender cómo funcionan ROS y los robots.
- También hay información esencial adicional de la que debes ser consciente cuando trabajas con los robots reales. Trabaja en los ejercicios adicionales aquí ahora.
- Finalmente, revisa los Procedimientos de Apagado. Sigue estos pasos para apagar el robot y apagar la laptop de robótica al final de cada sesión de laboratorio.
-
Puedes solicitar el GitHub Student Developer Pack, que te da acceso a una variedad de herramientas de desarrollo incluyendo GitHub Pro. GitHub Pro te permite tener colaboradores ilimitados en tus repositorios, lo que podría ayudarte a colaborar en tu paquete de ROS con tu equipo. ↩