Welcome to my portfolio! I am a specialized robotic software developer focused on the programming, design, and integration of software in robotic systems, with extensive experience in the application of the Robot Operating System (ROS). My passion for innovation and problem-solving drives me to develop solutions that enhance the efficiency and capabilities of machines. Discover how I help shape the future of robotics through advanced ROS applications.
About me
As a dedicated robotic software developer with over six years of experience and a Ph.D. in computer science from the Technical University of Munich, I have sharpened my skills in both academic and industrial environments. I have deep knowledge of the programming languages C++ and Python and specialize in the Robot Operating System (ROS), which serves as the core platform for my projects in the field of robotics. My goal is to solve complex problems through automation and improve daily life.
Experience & Expertise
- 6+ years of experience in robotics projects
- Deep knowledge of ROS (Robot Operating System) and related projects such as MoveIt!, RViz, and PCL (Point Cloud Library)
- Experience in modeling and simulation of robots in Nvidia Omniverse Isaac and Gazebo
- 3D modeling of components, among others, for use with robotic arms
- Successful track record of completed projects in both industry and academia
- Experience in programming robots from various manufacturers: Franka Emika, ABB, Universal Robots, Yaskawa
Services
Simulations in NVIDIA Omniverse Isaac
I support you in the modeling and integration of robots for Omniverse Isaac. For controlling robots with NVIDIA Lula or ROS, I am happy to assist your team with the implementation.
Robotic Development with ROS
Whether strengthening your team on an existing project or developing a new prototype, I support you with my expertise in executing your ideas.
Training and Workshops
Does your team want to learn the basics of robot control with ROS or get started with development using the NVIDIA Omniverse Isaac simulation environment? I will provide your team with the necessary knowledge, from the fundamentals to advanced topics such as manipulation and safety, for your next project.
Project Planning and Execution
Would you like to implement a robotics or simulation project safely and predictably from planning to practical deployment? I would be happy to support you in this task and guide your team through technically demanding and timely project execution.
Portfolio
- C++
- Standard Libraries
- Boost
- Eigen
- Python
- NumPy
- SciPy
- Matplotlib
- JavaScript
- ReactJS
- OpenCL
- Robot Operating System (ROS)
- MoveIt!
- RViz
- PCL
- NVIDIA Omniverse Isaac: Digital Twins and Realistic Simulations with Physics and Ray Tracing
- Gazebo: Simulation of Robots in ROS Projects
- OpenCV: Image Recognition and Processing
- Docker: Platform-Independent Development
- Autodesk Inventor: 3D Modeling of Components
- OpenCL: Programming of Graphics Accelerators for Accelerated Execution of Algorithms
- GitLab CI: Continuous Integration for Quality Assurance in Software Projects
- All topics in the field of robotics, particularly kinematics
- Camera systems and their theoretical foundations
- Expertise in the mathematical modeling of complex phenomena, especially for geometric problems
Projects
Industrial Metaverse Prototype with ROS and Omniverse Isaac
I supported a client in the electronics and sensor technology industry in developing a prototype for the market launch of a sensor system. In an industrial metaverse setting based on NVIDIA’s Omniverse Isaac simulation, robotic arms from various manufacturers were to be integrated. Based on sensor signals, the speed of the robotic arms was to be adjusted or even completely stopped.
I was responsible for the following tasks during this project:
- Creating ROS integrations from geometry data and CAD files for four robotic arms (ABB, FANUC, Yaskawa, and Universal Robots)
- Defining the robot models
- Configuring the motion planning pipeline with MoveIt
- Configuring the controllers in ROS Control
- Importing the robot models into the NVIDIA Omniverse Isaac simulation
- Extending a Python extension for controlling the robotic arms in Isaac Simulation
- Creating a ROS package for controlling the robotic arms and facilitating their interchange in the running system with ROS2 Humble
- Training employees in ROS2 Humble
The results of this project were presented by my client at a trade fair, a developer conference, and in a professional journal.
X-ray Computed Tomography with a Robotic Sample Holder
In my doctoral thesis, I integrated an industrial robotic arm in a CT lab for flexible imaging of samples. My tasks in this project included:
- Simulating and controlling the FRANKA EMIKA Panda robotic arm
- Developing sample holders using 3D printing methods
- Geometric calibration of the exact position of samples in CT scans with custom designed sample holder parts and optimization algorithms
- Developing intelligent imaging strategies for optimal image quality and reduced radiation dose
- Creating a web-based user interface for controlling the robotic arm and visualizing the measurement results
I integrated the software for controlling the robotic arm into a standalone software package with the following components:
- ROS middleware for efficient data exchange between independent processes
- Secure manipulation of the robotic arm using the MoveIt! framework, including persistent encoding of the environment for collision detection
- Implementing ROS processes for robot control with C++, primarily using the standard and Boost libraries
- Implementing ROS processes for calibration and image analysis with Python, primarily using libraries such as NumPy, SciPy, and OpenCV
- Positioning planning of the robotic arm end-effector at the target for samples with dynamic sizes
- Trajectory planning and persistence for circular, spherical, and dynamic trajectories with a recovery routine in case of faulty execution
- Creating and updating coordinate transformations using the tf component
- Interface definitions for data exchange between processes
- Visualization using RViz and a custom ReactJS web interface
- Simulation of the robotic arm in Gazebo
- Creating a continuous integration pipeline in GitLab
- Providing various Docker images for development and CI
Contact
Interested in a project discussion or potential collaboration? Let’s get in touch! You can reach me by email at info@erdalpekel.de or by phone at +49 7541 / 5027701. Follow me on LinkedIn, GitHub, and my blog to see more of my work and stay updated on my latest projects.