Skip to content

A lunar navigation simulation using Chandrayaan-3 terrain data that auto-generates random start and end coordinates. It visualizes the terrain and plots a path to simulate rover movement, aiding in analyzing safe and efficient traversal across the lunar surface.

Notifications You must be signed in to change notification settings

Risheel-K/Lunar-Surface-Navigation-Simulation-using-Chandrayaan-3-Terrain-Data

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

Lunar-Surface-Navigation-Simulation-using-Chandrayaan-3-Terrain-Data

Overview

This module simulates autonomous rover navigation over lunar terrain using real Chandrayaan-3 elevation data. It demonstrates safe-path planning, crater avoidance, and real-time movement logic purely via software simulation (no hardware used).

Terrain Data Extraction and Preprocessing

Source: Chandrayaan-3 Digital Terrain Model (DTM) .tif file.

Original Size: 35,312 × 59,405 pixels (~2.09 billion pixels).

Resampled Size: 1200 × 800 pixels using bilinear interpolation.

Processing Steps:

    Intensity thresholding (<50) to identify unsafe zones (craters).

    Morphological closing + erosion to refine boundaries.

    Binary safety mask generated for path planning.

rawmoon

Processed elevation map with safe vs. unsafe zones Chandrayaan Terrain Processed Map

Path Planning Strategy

Algorithm Used: A* (preferred over RRT* for known terrains).

Justification:

    Deterministic & optimal for static maps.

    Works on 2D navigation grids.

    Avoids overhead from random sampling.

A* vs RRT*

Feature A* RRT* Path Predictability High (Deterministic) Variable (Sampling-based) Performance on Grid Maps Excellent Suboptimal Processing Time Low Higher

Rover Simulation Logic

Start: Random safe point

Goal: Random reachable safe zone

Checks:

    Waypoint distance and angle

    Terrain safety at each pixel

Fallbacks:

    Edge-following

    Goal adjustment if unreachable

moonstart

Initial stage of lunar navigation simulation. The rover begins at (622, 407) and navigates toward the target at (765, 525), with planned (dashed yellow) and actual (green) paths over Chandrayaan-3 terrain data.

moonhalfpath

Rover mid-way through lunar terrain, navigating around crater edges and obstacles.

moonreached

Final position of rover after successful path execution Final Target Reached

Performance Evaluation

Grid Size 5 pixels Path Planning Time (avg) < 200 ms Target Reach Accuracy > 97% (within 3 pixels) Path Efficiency 88% – 95% Obstacle Avoidance Success 100% Simulation FPS (rendered) ~20 FPS

Conclusion

This module proves the viability of terrain-aware navigation using only elevation data and image processing. It forms a foundation for future embedded lunar rovers by validating:

A* efficiency in terrain traversal.

Real-time fallback logic.

Software-only intelligent path computation over high-risk terrain.

Note

moontest15.py: This script does not implement random mapping. It uses a preprocessed lunar elevation map based on Chandrayaan-3 data with safe and unsafe zones already defined. It is used for structured simulation only.

moontest16.py: This script is designed for manual path planning. Users can define the start and goal positions, and the rover will compute and follow the path accordingly using A* or other logic as configured.

And Lunar file can be downloaded from : https://drive.google.com/file/d/1P8hc9phdu9EZ0GCb-tsXxK7TAbZEv4TW/view?usp=sharing

About

A lunar navigation simulation using Chandrayaan-3 terrain data that auto-generates random start and end coordinates. It visualizes the terrain and plots a path to simulate rover movement, aiding in analyzing safe and efficient traversal across the lunar surface.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages