Copenhagen, Denmark | DTU M.Sc. Autonomous Systems

I build robotics software, controls, and sensing tools that hold up outside ideal conditions.

My work sits where software, physical hardware, and messy data meet. I care about practical implementation, simulation, evaluation, and interfaces that make technical behavior clear to the people using the tool.

Featured work

The homepage stays on the projects that represent the work best.

The main work sits first. Coursework, background, and the rest of the site stay one step lower so the hierarchy is clearer.

Lead project

Robotics field tooling + sensing

PerPlant combined ROS2 field sensing with cleaner computer-vision dataset workflows.

This is the closest match to the robotics-software story: wiring sensing into field collection, carrying metadata through the workflow, and building data tools that make downstream perception work less brittle.

  • Thermal + GPS collection was built around real field conditions, not ideal capture.
  • Filtering, embeddings, clustering, and grouped splits were used to reduce leakage and redundancy.
ROS2Thermal + GPSDataset quality
Thermal imaging output from the PerPlant sensing workflow

Collection

ROS2 thermal imaging

Metadata

GPS-tagged field capture

Curation

Representative subsets

Robotics research + modeling

Biomechanical modeling and experimental validation for a soft variable-stiffness finger actuator.

M.Sc. thesis in progress: a simulation-first framework for a simplified index-finger actuation system, moving from reduced-order modeling and Python simulation toward closed-loop benchtop validation.

  • Models tendon-routing geometry, passive joint torque, actuator leverage, tendon stroke, and tension estimates.
  • Plans validation through force-displacement measurement, motion tracking, repeatability tests, and model-vs-experiment error analysis.
Python simulationVariable stiffnessBenchtop validation
Workflow diagram for the thesis from task framing to validated mock-up

Applied software + environmental modeling

SunnySips turns geometry, weather, and map data into a fast outdoor recommendation tool.

The useful part is the translation layer: taking physical conditions like sun angle, urban occlusion, and weather attenuation, then making the computation reliable enough to drive a simple user-facing app.

  • Modeled changing outdoor conditions rather than relying on static cafe lists.
  • Tightened data contracts, defaults, and snapshots so the app behavior stayed predictable.
SwiftUIFastAPIGeospatial modeling
SunnySips map interfaceSunnySips recommendations view

Mobile software + product architecture

TRYBE explores how mobile architecture and interaction design can make a new behavior feel easy to try.

This is the least robotics-heavy project, but it still shows how I think about software: define the loop, make the states concrete, plan the backend shape, and keep the interface honest about what the app can actually do.

  • Mapped sessions, perks, and partner logic into a concrete mobile flow.
  • Used interface decisions to expose real constraints instead of hiding them behind vague product language.
iOS structureBackend planningState design
TRYBE sessions screenTRYBE perks screen

Coursework

Academic work, kept separate on purpose.

These projects reinforce the autonomy and sensing thread, but they stay visually lighter than the featured work above so the scope remains clear.

Coursework + academic projects

Autonomy Sensor Data & Mapping Coursework

ROS2, LiDAR, GNSS/IMU, odometry, point-cloud processing, occupancy-grid mapping, autonomy simulation/debugging

DTU coursework and team projects across robot autonomy, unmanned systems, and marine robotics.

/odom/scanTF2OccupancyGridGNSS/INSPointCloud2
  • Built ROS2 occupancy-grid mapping from `/odom` and `/scan`, using TF2 transforms and Bresenham ray tracing to publish `nav_msgs/OccupancyGrid`.
  • Worked on Crazyflie coursework using ROS2, MATLAB, and OptiTrack for controller validation and shared-lab debugging across networking, radio, and motion-capture issues.
  • Used ROS, Gazebo, and RViz in marine robotics workflows, including GPS extraction and path reconstruction from ROS bags plus Ouster `PointCloud2` extraction and visualization.
ROS2LiDARGNSS/IMUGazebo
Poster preview for the autonomy sensor data and mapping coursework

Coursework + academic projects

ADLCV

DDPMs, UNets, conditional generation, discrete tile encodings

Coursework project on DDPM-style Super Mario level generation using 14x14 ASCII data from the VGLC dataset. The project used a tile-to-sprite decoder plus unconditional and conditional UNet variants, with discrete levels represented through one-hot tile encodings.

2,866 ASCII levelsVGLCUNetconditional DDPMFID 5.692
DDPMUNetConditional generationVGLC
Poster preview for the ADLCV Super Mario diffusion coursework project

Contact

Open to robotics software, controls, mechatronics, simulation, and applied research work.