Line following Maze solving bot with shortest path in CoppeliaSim environment
- About the Project
- Getting Started
- Usage
- Results
- Future Work
- Contributors
- Acknowledgements and Resources
- License
- Aim
To make a line following maze solving bot with shortest path algorithm using CoppeliaSim in C-language. - Description of project
We have made a bot which will be capable enough of exploring an unknown path on its own without any user interaction during the exploration. Our motive was to make a bot that can explore the maze and find the shortest path in the minimum time possible by traveling the minimum distance. Hence our project requires use of algorithms and data structures as the major part. We have used the Legacy Remote API for server side so that the written code is in C language.
Refer this documentation
This section lists the technologies you used for this project.
.
├── docs # Documentation files
│ ├── report.pdf # Project report
│ └── results # Folder containing screenshots, videos of results
├── dry_run # Source files and vrep scenes for dry run of bot
│ ├── src # Source files and code for exploration of maze
│ ├── vrep_scenes # Folder containing scene with bot and path
│ └── Makefile # for producing final executable file
├── final_run # Source files and vrep scenes for final run of bot
│ ├── src # Source files and code for final of maze
│ ├── vrep_scenes # Folder containing scene with bot and path
│ └── Makefile # for producing final executable file
├── LICENSE
├── README.md
└── SETUP.md
- See SETUP.md for the installation steps.
- List of softwares with version tested on
$ gcc --version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.12) 5.4.0
$ make --version
GNU Make 4.1
Clone the repo
git clone https://github.com/Bhumika-Kothwal/Eklavya-2020--Slayers.git
- For Dry Run
- Open the folder dry_run
- Run the make command in the terminal as given below. (This should lead to formation of two folders-bin, obj)
$ make clean $ make
- Open the CoppeliaSim environment by running the command below in the terminal-
$ coppelia-sim
- Open the desired scene and start the simulation.
- For Final Run
- Open the folder final_run
- Follow the same steps 2-4 as stated for Dry Run.
result screenshots
result video
- Improving the efficiency of back-tracking
- Introducing wheel encoders in bot
- SRA VJTI Eklavya 2020
- Refered this for understanding and working with CoppeliaSim and for model of bot
- Refered this for implementing Legacy Remote API and Remote API functions for C language.Below flowchart will help you access the required information from the page cited above.
CoppeliaSim User Manual
├── ...
├── Writing code in and around CoppeliaSim
│ ├── ...
│ └── CoppeliaSim API framework
│ ├── ...
│ ├── Remote API
│ │ ├── ...
│ │ └── Legacy remote API #Using Legacy Remote API
│ │ ├── Enabling the remote API - client side #Information about the client side requirements
│ │ ├── Enabling the remote API - server side #Information about the server side requirements
│ │ ├── ...
│ │ ├── Remote API functions(C/C++) #Information about the functions to be used, their purposes, prototypes, return types
│ │ └── ...
│ └── ...
└── ...
Details of license can be found here.