Identifying Data 2020/21
Subject (*) Robotics Application Development: Advanced ROS Code 770538014
Study programme
Máster Universitario en Informática Industrial e Robótica
Descriptors Cycle Period Year Type Credits
Official Master's Degree 2nd four-month period
First Optional 3
Language
Spanish
Galician
Teaching method Face-to-face
Prerequisites
Department Ciencias da Computación e Tecnoloxías da Información
Coordinador
Becerra Permuy, Jose Antonio
E-mail
jose.antonio.becerra.permuy@udc.es
Lecturers
Becerra Permuy, Jose Antonio
Mallo Casdelo, Alma María
E-mail
jose.antonio.becerra.permuy@udc.es
alma.mallo@udc.es
Web
General description O obxectivo desta materia é que o alumno sexa capaz de abordar aplicacións de robótica reais con ROS e Python, incluíndo probas con simuladores físicos 3D e a implantación en robots reais.
Contingency plan 1. Modificacións nos contidos
Non se realizarán cambios.

2. Metodoloxías
*Metodoloxías docentes que se manteñen
Mantéñense todas as metodoloxías.

*Metodoloxías docentes que se modifican
Todas as metodoloxías terán que ser adaptadas. Así, a sesión maxistral, as prácticas de laboratorio e a proba mixta realizaranse mediante Teams e / ou Moodle. A presentación dos traballos tutelados realizarase tamén mediante Teams. Os dispositivos físicos empregados en todas as metodoloxías serán substituídos por simuladores.

3. Mecanismos de atención personalizada ao alumnado
Fóra das titorías en despacho, mantéñense os mesmos mecanismos de atención personalizada, a saber: videoconferencia e mensaxería por Teams, Moodle e correo electrónico, por esta orde de preferencia.
Adicionalmente, se o profesorado observa que hai dúbidas comúns a un grupo de alumnos, poderanse programar titorías de grupo reducido mediante videoconferencia por Teams.

4. Modificacións na avaliación
Non hai cambios na avaliación, máis aló de que será realizada telemáticamente mediante Moodle ou Teams.

*Observacións de avaliación:

5. Modificacións da bibliografía ou webgrafía
Toda a bibliografía recomendada foi adquirida pola biblioteca do centro en PDF ademais de en papel, polo que podería ser proporcionada aos alumnos. No caso de que iso non fose posible por unha cuestión de dereitos de autor, o profesorado proporcionaría unha substitutoria de libre acceso.

Study programme competencies
Code Study programme competences
A4 CE04 - Capacidad para uso y desarrollo de código y librerías que permitan captar el entorno y actuar sobre él en sistemas robóticos y/o industriales
A5 CE05 - Capacidad para uso y desarrollo de código y librerías que permitan realizar visión por computador o realidad aumentada sobre sistemas robóticos y/o industriales
A6 CE06 - Capacidad para diseñar, simular y/o implementar soluciones tecnológicas que impliquen el uso de robots y/o sistemas de informática industrial en un entorno, contemplando aspectos éticos y legales
A9 CE09 - Capacidad para el uso, simulación y diseño de sistemas mecánicos empleados en entornos robóticos y/o industriales
B1 CB6 - Poseer y comprender conocimientos que aporten una base u oportunidad de ser originales en el desarrollo y/o aplicación de ideas, a menudo en un contexto de investigación
B5 CB10 - Que los estudiantes posean las habilidades de aprendizaje que les permitan continuar estudiando de un modo que habrá de ser en gran medida autodirigido o autónomo.
B6 CG1 - Buscar y seleccionar alternativas considerando las mejores soluciones posibles
B10 CG5 - Capacidad para proponer nuevas soluciones en proyectos, productos o servicios
B12 CG7 - Analizar de forma crítica la propia experiencia de prácticas
B14 CG9 - Aplicar conocimientos de ciencias y tecnologías avanzadas a la práctica profesional o investigadora
B18 CG13 - Plantear y resolver problemas, interpretar un conjunto de datos y analizar los resultados obtenidos; en el ámbito de la informática industrial y la robótica
C4 CT04 - Desarrollar el pensamiento crítico
C5 CT05 - Adquirir la capacidad para elaborar un trabajo multidisciplinar

Learning aims
Learning outcomes Study programme competences
Saber desenvolver aplicacións de robótica complexas utilizando un IDE completo, incluíndo a depuración dos nodos. AC4
AC6
BC14
Saber utilizar un simulador 3D en ROS. AC4
AC5
AC6
AC9
BC12
BC14
Coñecemento dalgunhas librerías habituais en ROS para a utilización de sensores e actuadores habituais, incluíndo cámaras. AC4
AC5
AC6
AC9
BC14
Coñecemento de librerías que permiten implementar técnicas SLAM en ROS. AC4
AC5
AC6
AC9
BC1
BC5
BC6
BC10
BC12
BC14
BC18
CC4
CC5
Experiencia no desenvolvemento de aplicacións ROS sobre robots reais. AC4
AC5
AC6
AC9
BC1
BC5
BC6
BC10
BC12
BC14
BC18
CC4
CC5

Contents
Topic Sub-topic
Integración de ROS nun IDE de Python. ROS en Visual Studio Code.
Depuración con Winpdb.
Simulación 3D en ROS. Gazebo.
Exemplos de utilización de sensores e actuadores reais con ROS. 2D range finders.
3D sensors.
Pose estimation.
Cameras.
ROS Control.
Utilización de cámaras e librerías de procesado de imaxes en ROS. ROS Pipeline.
Imaxe RGB.
Imaxe estéreo.
Imaxe de profundidad.
SLAM en ROS. OpenSLAM GMapping.
Hector SLAM.
OpenVSLAM.
Implementación de exemplos completos utilizando simulación e robots reais. Implementación de exemplos completos utilizando simulación e robots reais.

Planning
Methodologies / tests Competencies Ordinary class hours Student’s personal work hours Total hours
Guest lecture / keynote speech A6 B1 B10 C4 7 10.5 17.5
Laboratory practice A4 A5 A6 A9 B6 B12 B14 B18 10 15 25
Supervised projects A4 A5 A6 A9 B5 B6 B12 B14 B18 C5 0 28.5 28.5
Mixed objective/subjective test A6 B1 B10 C4 2 0 2
 
Personalized attention 2 0 2
 
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies Description
Guest lecture / keynote speech Actividade presencial na aula que serve para establecer os conceptos fundamentais da materia. Consiste na exposición oral facendo uso profuso de medios audiovisuais e buscando a participación dos alumnos mediante a formulación de casos prácticos e a realización de preguntas, co fin de facilitar a aprendizaxe e fomentar o espírito crítico.
Laboratory practice Mediante esta actividade os alumnos implementarán no laboratorio pequenos programas / sistemas que exemplificarán os conceptos vistos nas sesións maxistrais, de forma que poidan probar no mundo real algúns dos métodos e técnicas, e valorar de primeira man os problemas (e as súas implicacións) que xorden na implementación.
Supervised projects Realización dun ou varios traballos ao longo do cuadrimestre, expostos de forma incremental, realizados de forma autónoma e titorizados polos profesores, que implicarán levar á práctica gran parte dos conceptos vistos nas sesións maxistrais. O traballo será realizado en grupo e os alumnos entregarán, en soporte informático, unha memoria e terán que realizar tamén unha presentación ante o profesor e os seus compañeiros de clase.
Mixed objective/subjective test Proba de avaliación que se realizará nas correspondentes oportunidades das convocatorias oficiais. Consistirá nunha proba escrita con preguntas moi breves e / ou de tipo test, coa finalidade de comprobar o afianzamento dos conceptos teóricos máis importantes vistos na materia.

Personalized attention
Methodologies
Supervised projects
Description
Traballos tutelados: será necesario mostrar os avances que se vaian realizando para ofrecer a orientación adecuada, resolver dúbidas e asegurar a calidade do traballo. Estas titorías realizaranse en grupo e de forma presencial no despacho do profesor.

Assessment
Methodologies Competencies Description Qualification
Mixed objective/subjective test A6 B1 B10 C4 Proba final da materia que consistirá na realización dun exame individual. Esta proba terá preguntas de tipo teóricas e prácticas relacionadas cos conceptos estudados nas clases maxistrais, nas prácticas de laboratorio ou cos contidos dos traballos / proyectos tutelados.

Nomenclatura empregada na sección de observacións para esta actividade:
PM: nota obtida nesta proba.
25
Laboratory practice A4 A5 A6 A9 B6 B12 B14 B18 Consistirá na recompilación de todas as prácticas de laboratorio realizadas durante o curso. Estas deberán realizarse no tempo asignado ás clases prácticas, e entregaranse ao final das mesmas. Durante a súa realización, o alumno pode expor dúbidas ao profesor ou consultar os materiais que estime oportuno. Por tanto, esta actividade avaliará o traballo diario do alumno nas clases prácticas.

Nomenclatura empregada na sección de observacións para esta actividade:
PL: nota obtida nos exercicios realizados nas clases prácticas de laboratorio.
35
Supervised projects A4 A5 A6 A9 B5 B6 B12 B14 B18 C5 Desenvolvemento dun proxecto aplicado en grupos reducidos. Será necesario entregar os materiais (documento e presentación) en tempo e forma seguindo as indicacións do enunciado. Ademais, requirirá a exposición oral por parte de todos os integrantes do grupo de traballo, empregando para iso a presentación entregada. A non realización da presentación supoñerá unha nota de cero nesta actividade.

Nomenclatura empregada na sección de observacións para esta actividade:
TT: nota obtida no traballo tutelado.
40
 
Assessment comments
Para poder aprobar a materia o estudante deberá cumprir os seguintes requisitos (puntuación entre 0 e 10 en todas as actividades):
  1. Que a nota nas prácticas de laboratorio sexa maior ou igual que 5.
  2. Que a nota no traballo tutelado sexa maior ou igual que 5.
  3. Que a nota na proba mixta sexa maior ou igual que 5.
Se non se cumpren todos os requisitos anteriores a  cualificación será de suspenso e a nota numérica máxima que se poderá obter, na oportunidade correspondente, será de 4,5 puntos. Se se cumpren os requisitos esixidos, a nota final calcularase da seguinte forma:

NOTA FINAL = 0,35× PL + 0,40* TT + 0,25* PM

Aínda que a asistencia ás clases non é obrigatoria, o primeiro requisito converte en moi difícil aprobar a materia se o número de ausencias ás clases no laboratorio é elevado.

No caso dos alumnos matriculados a tempo parcial, dependendo das circunstancias e se os profesores considérano necesario, a parte da puntuación das diferentes prácticas de laboratorio poderá pasarse ao traballo tutelado, a cambio da obrigación da existencia dunha titoría cada semana para garantir o correcto aproveitamento da materia.

Notas sobre as actividades:

- Todas as actividades terán unha única oportunidade para a súa entrega durante o curso académico, salvo a proba mixta que terá dúas oportunidades oficiais de exame. Por tanto, as notas obtidas durante o curso nas prácticas e no traballo tutelado gárdanse para a oportunidade de xullo, NON SENDO POSIBLE REPETILAS.

- De acordo ao artigo 14, apartados 1 e 3 da normativa*, a copia ou intento de copia (ou calquera comportamento impropio) durante unha proba implicará a  cualificación de suspenso cun 0 nas dúas oportunidades da convocatoria anual.

- De acordo ao artigo 14, apartado 4 da mesma normativa, o plaxio de calquera traballo implicará a  cualificación de suspenso cun 0 no devandito traballo.

* Normativa de avaliación, revisión e reclamación das cualificacións dos estudos de grao e máster universitario, cuxa última versión é do 29 de xuño de 2017.

Sources of information
Basic Newman, W. (2017). (2017). A Systematic Approach to Learning Robot Programming with ROS.. CRC Press.
Joseph, L., & Cacace, J. (2018). Mastering ROS for Robotics Programming: Design, build, and simulate complex robots using the Robot Operating System. Second Edition.. Packt Publishing Ltd.
Fairchild, C., & Harman, T. L. (2017). ROS Robotics By Example: Learning to control wheeled, limbed, and flying robots using ROS Kinetic Kame. Second Edition.. Packt Publishing Ltd.

Complementary


Recommendations
Subjects that it is recommended to have taken before
Introduction to Python for Engineers/770538011
Robotics Application Development: Introduction to ROS/770538013

Subjects that are recommended to be taken simultaneously
Python for Engineers. Advanced /770538012

Subjects that continue the syllabus

Other comments
Para axudar a conseguir unha contorna sustentable e cumprir co obxectivo da acción número 5 ("Docencia e investigación saudable e sustentable ambiental e social") do "Plan de Acción Green Campus Ferrol" a entrega dos traballos documentais que se realicen nesta materia:

1. Solicitarase en formato virtual e/ou soporte informático.

2. Realizarase a través de Moodle, en formato dixital sen necesidade de imprimilos.

3. De realizarse en papel:

- Non se empregarán plásticos.

- Realizaranse impresións a dobre cara.

- Empregarase papel reciclado.

- Evitarase a impresión de borradores.


(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.