Skip to content
View mhayman9's full-sized avatar

Block or report mhayman9

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mhayman9/README.md

Hi, I'm Mohamed Haggag

M.Sc. student in Mechatronics, Robotics, and Biomechanical Engineering at TUM | Working student at Quantum-Systems

I write robotics software in C++ and Python with ROS 2, for robot arms in simulation and on real hardware. At Quantum-Systems I work on the Drone Port, a robotic system that autonomously catches, stores and launches UAVs. My Master's at TUM runs until March 2028.

Projects

Desk wiping with a Franka Panda (franka_panda_ros2)

A real-time ros2_control controller in C++ that combines Cartesian impedance control with normal-force control. The same controller runs in MuJoCo and on a real Franka Emika Panda, and the repository has videos of both. We built it as a team of three in the Robot Dynamics lab course at TUM (Chair of Applied Mechanics).

Robot kinematics and dynamics in Python (Robot-Dynamics)

Our solutions to the exercises of the same course: forward and inverse kinematics, Newton-Euler inverse dynamics, simulation and trajectory planning for an ABB GoFa, a SCHUNK Power Cube and a Franka Emika Panda. The chair provided the course framework, and our team filled in the parts it leaves open.

Bachelor thesis in autonomous motorsport

At the TUM Professorship of Autonomous Vehicle Systems I developed a method for the safe use of secondary drivable areas in autonomous racing. It covers mapping, a hierarchical decision-making architecture in ROS 2, and safe trajectories for leaving and returning to the racing line, validated in simulation.

Experience

Quantum-Systems, Munich

Working student in the Drone Port team since 06/2024, after an internship from 03/2024 to 05/2024.

  • Implemented robot motion sequences and state handling in Python on real Universal Robots UR10e and RobCo arms
  • Developed embedded C++ firmware for Drone Port components such as gripper control, drone charging, battery cooling and health monitoring
  • Integrated sensor data into the Drone Port software
  • Wrote a Python wind-force analysis that computes wind direction from measured forces and moments
  • Built Python/Tkinter tools: an operator interface with health monitoring and a hardware test tool for production engineers
  • Designed mechanical components and enclosures in CATIA V5 before moving to software

Knorr-Bremse Rail Vehicle Systems, Munich

Working student from 03/2023 to 02/2024. I analyzed test bench reports to validate friction material performance across operating conditions.

Optimol Instruments Prüftechnik, Munich

Working student from 03/2022 to 02/2023, with a manufacturing internship from 09/2022 to 11/2022. I worked on measurement and control technology for force sensors, developed user software, ran automated tests and designed prototypes in Autodesk Inventor.

Education

  • M.Sc. Mechatronics, Robotics, and Biomechanical Engineering, Technical University of Munich, 04/2026 – 03/2028 (expected)
  • B.Sc. Mechanical Engineering, Technical University of Munich, 10/2020 – 08/2025

Skills

  • Robotics: ROS 2, MuJoCo, Gazebo, Isaac Sim, kinematics, dynamics, robot control, motion planning
  • Robots: Universal Robots UR10e, RobCo, Franka Emika Panda
  • Embedded: STM32, CAN, UART, UDP
  • Tools: Git, CMake, Linux (Ubuntu), Docker, CATIA V5, Autodesk Inventor
  • Languages: Arabic (native), German (C1), English (C1)

Popular repositories Loading

  1. Robot-Dynamics Robot-Dynamics Public

    Python 1

  2. franka_panda_ros2 franka_panda_ros2 Public

    Desk-wiping controller for the Franka Panda (ROS 2 Humble, MuJoCo and real robot), based on multipanda_ros2

    C++ 1

  3. mhayman9 mhayman9 Public