Degree in International Computer Engineering La Salle Campus Barcelona

Bachelor in International Computer Engineering

La Salle Degree s in Computer Engineering, is the only Degree program in Barcelona which equips you with the skills and knowledge needed to meet the new international demands of the computer engineering sector and of the global business world.

Introduction to Robotics

Description: 

The subject introduces the student to the fundamental concepts of robotics through an eminently practical methodology. During the course, the main components of a robotic system will be worked on, including sensors, actuators, programming and ethical aspects related to robotics.

The first part of the course focuses on programming and controlling devices using LSMaker and Python, providing the necessary foundations for the development of robotic applications. Subsequently, students will integrate voice assistants with a UR3 collaborative robot, gaining experience in communication between different systems and in the programming of real applications.

Finally, the ROS2 ecosystem will be introduced as a standard for robotic software development. Concepts such as nodes, topics, services and simulation with Gazebo will be worked on, culminating in the development of an integrative practice.

The subject combines master classes, seminars given by professionals in the sector, practical laboratory activities, checkpoints for monitoring progress and possible external visits or seminars related to industrial and research robotics.

Type Subject
Optativa
Semester
Annual
Credits
3.00

Titular Professors

Previous Knowledge: 

Previous knowledge of coding facilitates the comprehension of the topics, but it is not mandatory.

Objectives: 

At the end of the course, the student will be able to:

  • Understand the fundamental concepts of robotics, as well as the role of sensors, actuators, and control systems in a robot.
  • Analyze the ethical, social, and safety implications arising from the development and use of robotic systems.
  • Develop basic programming applications using Python aimed at controlling robotic devices and systems.
  • Integrate different software and hardware technologies into robotic applications, including voice assistants and collaborative robots.
  • Program and interact with a UR3 collaborative robot using the appropriate tools and interfaces.
  • Understand the architecture and operating principles of ROS2 as a standard platform for robotic software development.
  • Develop applications with ROS2 using nodes, topics, services and simulation environments.
  • Apply methodologies for developing, testing, and debugging robotic software in solving practical problems.
  • Work autonomously and collaboratively in the development of robotics practices and projects, properly documenting the solutions implemented.

Contents: 

THEORETICAL PART

1. Introduction to Robotics

1.1. Definition and architecture of a robotic system.1.2. Sensors, actuators and control systems.1.3. Pre-registration between the robot and its environment.

2. Fundamentals of robotics

2.1. Historical evolution of robotics.2.2. Areas of application and current state of the sector.2.3. Types of robots: industrial, collaborative, mobile and service.

3. Ethical aspects of robotics

3.1. Social impact of robotics and artificial intelligence.3.2. Security, privacy and responsibility.3.3. Ethical considerations in the design and deployment of robotic systems.

4. Programming applied to robotics

4.1. Python Fundamentals.4.2. Communication with devices and peripherals.4.3. Integration of external services and voice assistants.

5. Collaborative robots

5.1. Architecture and characteristics of the UR3.5.2 robot. Programming and control of the robot.5.3. Integration of the robot with external applications.

6. Introduction to ROS2

6.1. ROS Architecture2.6.2. Nodes, topics and services.6.3. Simulation with Gazebo.6.4. Development of robotic applications with ROS2.

PRACTICAL PART

1. Introduction to the development of robotic systems with LSMaker.

2. Development of Python applications aimed at robotics.

3. Integration of voice assistants with a UR3 collaborative robot.

4. Programming and control of the UR3 robot using Python and the tools provided by the manufacturer.

5. Development of applications with ROS2 using nodes, topics, services and simulation with Gazebo.

Methodology: 

The methodology used in this subject is based on master classes, where the topics are presented, and practical classes, where the student is tried to participate actively. During the lectures, the theoretical content of the subject is explained and concerns related to this explained content are resolved. Likewise, within these classes some are dedicated to proposing problems and having students solve them in situ, as well as debates are proposed for each one to show their point of view on the most controversial topics that robotics has.

Evaluation: 

The evaluation of the subject is continuous and is mainly based on the development and delivery of practices throughout the course, as well as on checkpoints and follow-up activities.

Evaluation Criteria: 

Each student will be evaluated:

  • Basic knowledge of robotics.
  • Knowledge of Arduino, as well as sensors and actuators.
  • Knowledge of Python programming.
  • Knowledge of AI applied to robotics.
  • Knowledge of the UR3 robot.
  • Knowledge of ROS.

Basic Bibliography: 

Introduction to Robotics, Craig, 3rd edition
Tutorials ROS2: https://docs.ros.org/en/humble/

Additional Material: 

Available materials of the subject.