Resume
Work Experience
Robotics Software Engineer Jan. 2019 - Jan. 2021
TUDelft, Delft, The Netherlands
Developed Jerk-limited motion algorithms for industrial robots (s-curve trajectories, trajectory smoothing)
Managed the daily activities of the RobotUnion Project (EU Horizon 2020 program)
Collaborated with robotics startups to integrate ROS packages into their robots (e.g. people simulation, gazebo pedestrian)
Integration of the pedestrian simulator 'pedsim' into Gazebo
Integration of ros controllers into Coppeliasim simulator (Coppeliasim ros-control, UR5 control as example)
Created Gazebo simulation environment for BotsAndUs company
Test motion algorithms into real robots
Teaching Assistant for the Robotics Software Practicals Course: Linux, C++, OpenCV, and ROS
Education
PhD in Intelligent System Engineering August 2021- Present
Luddy School of Informatics, Computing, and Engineering
Indiana University Bloomington, Indiana, USA
Research:
Working on integrating the formulation of navigation, mapping, and exploration into a cohesive framework.
Autonomous navigation in unstructured environments.
Memory-efficient representation for high-fidelity sensory information for reliable communication.
Courses:
Autonomous Robotics, Cyperphysical System, and Deep Learning Systems.
European Master On Advanced Robotics Plus (EMARO+) Sep. 2018
Ecole Centrale de Nantes, Nantes, France (First Year) Aug. 2016- Jul. 2017
Grade: 88.4% (First Rank 1/7)
Courses:
Modeling and control of manipulators - Control of linear multivariable system - Software architectures for Robotics - Advanced and Robot Programming - Computer vision - Real-time systems - Mechanical design methods in robotics - Artificial intelligence - Optimization techniques - Mobile robots - Nonlinear control theory - Signal processing.
First-Year Project: "Turtlebot Localization Using Visual Markers"
Developed a ROS-based package for robot localization using Vision. Both absolute and hybrid localization algorithms were implemented to localize the Turtlebot. A 360° Occam camera was placed on top of the robot to detect different predefined landmarks in the environment. Absolute localization was implemented using the optimization library RobOptim which is used to solve the Trilateration equations between three landmarks. Hybrid localization was implemented using the Extended Kalman Filter EKF
University of Genoa, Genoa, Italy (Second Year) Aug. 2017- Sep. 2018
Grade: 93.9%
Courses:
Coordination and control of complex robotic systems - Machine Learning - Embedded systems - Advanced modeling and optimization -Research methodology -Biomedical robotics
Italian Institute of Technology (IIT), Genoa, Italy (Internship) Mar. 2018- Sep. 2018
Master Thesis: "Event-based bio-inspired depth estimation algorithm for the scene exploration Using iCub"
Developed a biologically inspired approach for stereo-vision depth estimation which fully exploits the advantages of the Event-based cameras. Two approaches were proposed: the first approach is based on a computational model of the primary visual cortex called the Energy Model. It uses the difference between the monocular energy responses of a population of complex cells in the left and the right field of view to estimate the binocular disparity. The second approach proposes a new architecture of the Spiking Neural Network (SNN), it is called the Feature-Based Stereo Spiking Neural Network (FBSSNN). The FBSSNN uses populations of selective-oriented receptive fields to perform a feature-based stereo-matching mechanism for solving the stereo correspondence problem. The FBSSNN has been implemented using the new event-based approach on a massively parallel neuromorphic processor “SpiNNaker” and tested using both synthetic and real data sets.
BSc in Electronic Engineering Jul. 2014
Faculty of Electronic Engineering, Dept. of Control Engineering
Menoufia University, Menouf, Egypt
Grade: 90.4% (Second Rank 2/380)
Graduation Project: 'Intelligent Process Controller'
Developed an Intelligent Process Controller that utilizes different control algorithms (e.g. Fuzzy Logic and adaptive PID Control) to obtain the optimal performance of industrial processes. An adaptive PID controller was implemented in the Atmel ATmega 32 using C. The controller has different input interfaces (e.g. thermocouple, RTD, 0-5 V, and 4-20 mA) and different output interfaces (e.g. PWM for DC actuators and TRIAC for AC actuators).
Skills
Programming Languages:
C/C++, Python, MATLAB
Tools:
ROS1/ROS2, Git, Tensorflow, PyTorch, PYNN, NEURON, Simulink, Gazebo, CoppeliaSim, OpenCV, Pointcloud, Yarp, Microcontroller, Linux, Bash Scripts, Latex, MS Office.