I'm Lenart Lavrih, originally from Slovenia and currently residing in Arnhem, Netherlands. My professional expertise lies in robotics, computer vision, programming, and digital twin technology. Alongside my technical career, I have a strong passion for physical activities and enjoy engaging in adrenaline-fueled sports. In my leisure time, I love immersing myself in the world of music, whether it's playing the guitar or expressing my creativity through DJing. These pursuits offer a refreshing balance to my technologically oriented work.
University of Ljubljana, Faculty of Electrical Engineering
Bachelor’s degree, 2018 - 2021
Master’s degree, 2021 - 2023
RLS Merilna tehnika d. o. o.
Developing ROS2 framework for custom robot.
Jun 2021 - Oct 2022 (Approx. 16 months)
IHS Systems
ROS developer for Autonomous robot.
Oct 2022 - Dec 2023 (Approx. 14 months)
In March 2022, I embarked on a project to migrate a hobby robot's framework from ROS1 Melodic to ROS2 Humble. My first step was to create a custom URDF file to accurately represent the robot's structure and dimensions. Subsequently, I gained foundational knowledge in ROS1 and applied it to transition the system to ROS2. For motion planning, I utilized MoveIt, and for visualization and goal-setting, I used RViz.
In a separate project, I created a digital twin of a UR5 robot using ROS1 Noetic. The real-world robot and its simulation in Gazebo were both equipped with 8 LiDAR sensors. The simulation ran in real-time, synchronized through RTDE (Real-Time Data Exchange). Through a series of tests, we evaluated and compared sensor readings in both the simulated and real-world environments.
In my master's thesis, I integrated two cameras on an autonomous robot and developed an obstacle detection algorithm. The goal was optimal camera positioning and efficient environmental perception. After market analysis and literature review, a model was created to study camera placements. The Intel RealSense D435f stereo cameras captured the environment, and the architecture relied on ROS and Python. Open3d processed the data, with RViz for visualization. A GPU-based method sped up plane detection. The optimized obstacle detection algorithm was tested on the robot, assessing factors like distance deviation, detection resolution, and repeatability. Tests included different materials and dynamic obstacle detection. The study concludes by addressing challenges like glare, airborne obstacle detection, camera positioning, and potential enhancements.
The system adjusts its behavior based on the AMR's load. When loaded, the obstacle avoidance height is 2 meters, ensuring safe transit and collision avoidance. Unloaded, the threshold drops to 0.5 meters, allowing the AMR to navigate through tighter spaces. All obstacles are included in a costmap, crucial for the navigation system to compute the best path, ensuring smooth operation whether the AMR is loaded or not.
Control your mouse cursor using hand gestures with this Python script. It utilizes OpenCV, MediaPipe, and PyAutoGUI for gesture recognition and cursor control.