Skip to content

An IoT-based solution to enable a smart regolith transportation system in the moon.

Notifications You must be signed in to change notification settings

terranovafr/SmartMoonTransportationSystem

Repository files navigation

Smart Moon Transportation System 🌔

The goal of this project is the design and implementation of an intelligent wireless sensor network used to monitor and control a regolith transport solution for the Moon.
Lunar regolith is one of the most common resources present on the moon and it is an important material used for different ISRU activities, but also mineral processing and construction.
A set of regolith transport solutions is turned into a set of smart transportation systems that can be used to monitor and control the extraction and transportation process while minimizing dust hazards, possible errors in the amount of regolith transported, and considering the typical moon’s temperature extreme conditions. image

Project Structure

The project is organized as follows:

  • coap/ contains the source code of CoAP nodes
  • mqtt/ contains the source code of MQTT nodes
  • sensing/ contains the source code of the emulated sensors
  • utils/ contains utility functions
  • border_router/ contains the source code of the Contiki-NG Border Router
  • collector/ contains the source code of the Java collector
  • grafana/ contains the grafana dashboard
  • COOJA-simulation.csc is the Cooja simulation
  • SMTS_MySQL.sql is the SQL file that can be used to build the database

Requirements to run the project

  • Contiki-NG
  • Cooja simulator for the simulation
  • Grafana
  • Mosquitto MQTT broker
  • MySQL

Project setup

Step 1. Download the project into the contiki-ng/examples folder Step 2. Import the Grafana dashboard
Step 3. Setup the database

Create the SMTS DB:

mysql -u root -p
CREATE DATABASE SMTS;

Import the database structure:

mysql -u root -p SMTS < SMTS_MySQL.sql

Step 4. Run the MQTT broker

sudo service mosquitto start

Step 5. Run the collector

java -jar collector/collector.jar

The application.properties can be changed to change the metrics to monitor or other parameters.

COOJA Simulation

Step 1. Import the "COOJA Simulation.csc" file in Cooja
Step 2. Use tunslip6

cd border_router && make TARGET=cooja connect-router-cooja

Contiki-NG CC2650 Setup

Step 1. Flash the code on all sensor nodes:

Border router:

 cd border_router && make TARGET=cc26x0-cc13x0 BOARD=/launchpad/cc2650 border_router

MQTT node:

 cd mqtt && make TARGET=cc26x0-cc13x0 BOARD=/launchpad/cc2650 mqtt-sensor

CoAP node:

 cd coap && make TARGET=cc26x0-cc13x0 BOARD=/launchpad/cc2650 coap-sensor

Step 2. Power on all sensors
Step 3. Use tunslip6 to connect with the border router

make TARGET=cc26x0-cc13x0 BOARD=/launchpad/cc2650 connect-router PORT=/dev/ttyACM0

About

An IoT-based solution to enable a smart regolith transportation system in the moon.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages