SkyDrop is an automated UAV delivery system designed for a specific apartment building. This system allows parcels to be delivered from the apartment gate/security room to the destination apartment balcony by a UAV.
The complete system consist of an autonomous UAV system and a dashboard to send commands to the UAV. This repository contains the implementation related to the backend of the dashboard.
Technologies: NodeJS | Express | MongoDB
This work is based on the work done by Brunner et al., 201912. In our project, we are trying to improve their work further more by considering the suggestions mentioned by them in their research paper along with our own ideas.
The following tools and softwares should be installed in the local machine.
- Node.js v16.x: (NodeJS installation instructions)
Make sure that you have successfully installed both Node and NPM by runningnode -v
andnpm --version
. - MongoDB Standalone: (MongoDB installation instructions)
- MongoDB Compass (MongoDB Compass installation instructions)
Step 01: Verify that MongoDB is started successfully
sudo systemctl status mongod
If MongoDB isn't started, start MongoDB. (Follow the MongoDB installation instructions)
sudo systemctl start mongod
Step 02: Setting up the database
Open MongoDB Compass and click on CONNECT
(without mentioning any connection string) to connect to the standalone DB.
Create a database named skydrop
.
Create a collection named apartments
.
Then click on ADD DATA
and import the apartments
file (can be found inside database
directory in this project) as a json file.
Step 01: Create a folder to hold the backend and the frontend projects of SkyDrop
mkdir ~/Skydrop
Step 02: Clone the project
cd ~/Skydrop
git clone [email protected]:SkydropDroneDeliveries/skydrop_dashboard_server.git
NOTE: Make sure that the autonomousGPSIMU_mongoDB.py
python script is inside the mentioned path on the variable SCRIPT_NAME
in app.js
file.
Step 03: Running the project
cd ~/Skydrop/skydrop_dashboard_server
npm install
npx nodemon app.js
The server will start on port 4000 (http://localhost:4000).
Footnotes
-
Research Paper of Brunner et al. work: Link to the research paper
Brunner, G., Szebedy, B., Tanner, S. and Wattenhofer, R., 2019, June. The urban last mile problem: Autonomous drone delivery to your balcony. In 2019 international conference on unmanned aircraft systems (icuas) (pp. 1005-1012). IEEE. ↩ -
GitHub Repository of Brunner et al. work: Link to the repository ↩