EventoWeb

Zürcher Hochschule für Angewandte Wissenschaften

Nicht angemeldet (Montag, 1. September 2025 16:06:12)  

t.BA.WV.RAP-EN.20HS (Robotic Applications Programming) 
Modul: Robotic Applications Programming
Diese Information wurde generiert am: 01.09.2025
Nr.
t.BA.WV.RAP-EN.20HS
Bezeichnung
Robotic Applications Programming
Veranstalter
T InIT
Credits
4

Beschreibung

Version: 5.0 gültig ab 01.08.2024

Diese Modulbeschreibung gilt bis zum 31. Juli 2024. Die gültige Modulbeschreibung ist im Intranet unter https://intra.zhaw.ch/departemente/school-of-engineering/bachelorstudium/module im Modulhandbuch abrufbar.

 

Modulverantwortung:

Toffetti Giovanni (toff)

Modul- / Lernziele: (Kompetenzen)

Ziel Kompetenzen Taxonomiestufen
Understanding the motivation and general concepts of Robotics, categories of Robots, Software and Hardware, Architectures, Frameworks, Use Cases F K1, K2
Understanding the components of robotics applications, existing hardware and software frameworks, architectures of robotic applications F, M K1-K2
Being able to use the ROS framework, its architectural components, build and debugging tools to program complex robotic behavior F, M K1-K5
Leverage simulation in the complete SW development cycle of robotic applications. Robotic DevOps F, M K1-K6
Build robot-enabled applications leveraging distributed SW frameworks and components, Web UIs, cloud robotics, and external services F, M K1-K5

Modul- / Lerninhalte:

Robotics Application Development Introduction

  • Motivation, difference between Automation and Robotics
  • Types of Robots (classification, categories)
  • Use Cases and state of the art in robotic applications
  • Robotic components
  • Common SW Frameworks (commercial vs OSS)

ROS Introduction

  • ROS architecture & philosophy (Master and nodes responsibilities)
  • Robots as distributed SW systems
  • ROS vs ROS 2
  • Communication Primitives (Topics and Services)
  • Console commands
  • Common troubleshooting commands
  • Recording and replaying robots (rosbags)
  • Starting / stopping nodes: launch files

Building ROS Software Packages

  • Workspace and Build system
  • Build tools
  • Package specification
  • Dependency management
  • Debugging tools
  • Publisher and Subscriber nodes
  • Service and Client nodes
  • Action clients and servers

Visualization, Simulation and Robot Models

  • Simulation: Gazebo
  • Robotic visualization: Rviz
  • World specification files
  • Rviz Tools
  • Robot models (URDF)
  • Simulation descriptions (SDF)
  • Links, Joints, Sensors, Actuators
  • Collisions
  • Modelling your own robot
  • Gazebo plugins

How to define the pose of your robot (and its parts) in space

  • Coordinate systems
  • Poses
  • Transformations
  • Transformation representations and uses (quaternions, matrices)
  • Concrete implementations:
  • The coordinate transformation (TF) package
  • TF API and uses

How to build a map and localize your robot on it

  • Common Algorithms
  • Odometry
  • Visual Odometry
  • Localization and mapping: SLAM 2D/3D
  • Concrete implementations: Gmapping / Cartographer

How to drive your robot on a map

  • Common Algorithms
  • 2D navigation
  • 3D navigation
  • Concrete implementations:
  • The move_base package
  • Global and local planners
  • CostMaps and their configuration

High-level control of actuators through SW

  • The ROS control framework
  • Drive control
  • Arm control
  • Gripper control
  • Forward and inverse kinematics

Making your robot see

  • Intro to Sensors and classification
  • Images and PointClouds
  • Basics of filtering, segmentation, and clustering
  • Concrete implementations:
  • PCL - PointCloud Library, API and usage

Pick and place objects

  • The grasping chain
  • Objects, obstacles and Octomaps
  • Arm movement planning
  • Pick and place interface
  • Grasp generation
  • Grasp approach and execution
  • Concrete implementations:
  •     MoveIt
  •     MoveIt APIs

Distributed Robotic applications

  • ROS networking
  • Namespaces
  • Multi-robot coordination
  • Web interfaces for Robotic Application
  • RosBridge
  • Cloud Robotics

Research Outlook

Lehrmittel /Materialien:

Slides and documentation extracts will be provided for each lecture on Moodle

Docker container images needed for labs will be provided as software development environments for the students reducing set-up times. Access to a GPU cluster will also be provided.

Ergänzende Literatur:

Nikolaus Correll, Bradley Hayes, Christoffer Heckman, and Alessandro Roncone. Introduction to Autonomous Robots: Mechanisms, Sensors, Actuators, and Algorithms. v2.0, December 1, 2021 - (available online)

Lentin Joseph, Jonathan Cacace. Mastering ROS for Robotics Programming - Second Edition: Design, build, and simulate complex robots using the Robot Operating System, Packt Publishing 2018

Lentin Joseph, ROS Robotics Projects: Make your robots see, sense, and interact with cool and engaging projects with Robotic Operating System, Packt Publishing 2017

R. Siegwart and I. Nourbakhsh. Introduction to Autonomous Mobile Robots. MIT Press. 2004.

R. Murphy. Introduction to AI Robotics. MIT Press. 2000.

S. Thrun, W. Burgard and D. Fox. Probabilistic Robotics. MIT Press. 2005.

B. Siciliano and O. Khatib. Handbook of Robotics. Springer. 2008.

Zulassungs-voraussetzungen: 

 

Unterrichtssprache:

Englisch

Modulstruktur:  

Unterrichtsart Anzahl Lektionen / Woche
Vorlesung: 2L
Übung / Praktikum: 2L
Blockunterricht:  

Leistungsnachweise:

Von der Regelung der "Leistungsnachweise während der Unterrichtszeit" kann dann abgewichen werden, wenn der Dozierende dies in einer Modulbereinbarung während der ersten Woche des Studiensemesters schriftlich bekannt gibt.
Designation Type Form Scope Grade Weighting
Graded assignments during teaching semester Graded Assignments Presentation / Code   Yes 30%
End-of-semester exam Exam Written   Yes 70%

Bemerkungen

 

Hinweis

  • Weitere verfügbare Versionen: 1.0 gültig ab 01.02.2021, 2.0 gültig ab 01.08.2022, 3.0 gültig ab 01.02.2024
Kurs: Robotic Applications Programming - Vorlesung
Nr.
t.BA.WV.RAP-EN.20HS.V
Bezeichnung
Robotic Applications Programming - Vorlesung

Hinweis

  • Für das Stichdatum 01.02.2026 ist kein Modulbeschreibungstext im System verfügbar.