A comprehensive web portal for the Dreams Laboratory, integrating multiple research platforms including OpenUAV, DeepGIS XR, and ROS2 applications. The portal provides a unified interface for robotics simulation, geospatial analysis, and extended reality applications.
The Dreams Lab Portal serves as a central hub for various research platforms and tools:
- OpenUAV Platform: Multi-drone simulation environment with GPU acceleration
- DeepGIS XR: Geospatial analysis and visualization platform with XR capabilities
- ROS2 Integration: Robot Operating System 2 workspace for robotics applications
- Blender Integration: 3D modeling and rendering capabilities
- Container Management: Docker-based deployment and resource management
The system is built on a microservices architecture with the following components:
┌─────────────────────────────────────────────────────────────┐
│ Dreams Lab Portal │
├─────────────┬─────────────┬────────────────┬───────────────┤
│ OpenUAV │ DeepGIS XR │ ROS2 WS │ Blender │
│ Platform │ Services │ Services │ Render │
├─────────────┴─────────────┴────────────────┴───────────────┤
│ Nginx Reverse Proxy │
├─────────────────────────────────────────────────────────────┤
│ Docker Networking │
└─────────────────────────────────────────────────────────────┘
-
Web Service
- Django-based web application
- User authentication and management
- Project coordination and monitoring
- Resource allocation and scheduling
-
OpenUAV Integration
- Multi-drone simulation environment
- GPU-accelerated rendering
- VNC-based remote access
- PX4 SITL integration
-
DeepGIS XR Service
- Geospatial data processing
- XR visualization
- Tile server integration
- Machine learning capabilities
-
ROS2 Workspace
- Robot control and simulation
- Sensor data processing
- Navigation and planning
- Multi-robot coordination
- NVIDIA GPU with drivers 470+
- Docker 20.10+ and Docker Compose
- Python 3.9+
- ROS2 Humble (for robotics features)
- 16GB+ RAM recommended
- Ubuntu 20.04 or later
-
Clone the repository:
git clone https://github.com/your-org/dreams-lab-portal.git cd dreams-lab-portal
-
Create and configure the environment:
python -m venv venv source venv/bin/activate pip install -r requirements.txt
-
Set up Docker network:
docker network create --subnet=172.20.0.0/16 dreamslab
-
Build and start services:
docker-compose up --build
dreams-lab-portal/
├── openuav2/ # OpenUAV simulation platform
├── deepgis-xr/ # Geospatial XR platform
├── ros2_ws/ # ROS2 workspace
├── dreams_laboratory/ # Django project directory
├── templates/ # HTML templates
├── static/ # Static assets
├── media/ # User uploaded files
├── nginx.conf # Nginx configuration
├── Dockerfile # Main service container
└── docker-compose.yml # Service orchestration
SECRET_KEY
: Django secret keyDEBUG
: Debug mode flagALLOWED_HOSTS
: Comma-separated list of allowed hostsTWILIO_*
: Twilio integration settingsNVIDIA_*
: GPU configuration
- Runtime: NVIDIA Container Runtime
- Network: Custom bridge network (172.20.0.0/16)
- Volumes: Static, media, and database persistence
- Ports: Main service on 8080, subsidiary services on various ports
-
Start development server:
docker-compose up
-
Access services:
- Main Portal: http://localhost:8080
- OpenUAV: http://localhost:8060
- DeepGIS XR: http://localhost:8090
- ROS2 Bridge: http://localhost:9090
-
User Management
- Authentication and authorization
- Project access control
- Resource allocation
-
Simulation Environment
- Multi-drone scenarios
- GPU-accelerated rendering
- Real-time visualization
-
Geospatial Analysis
- Data processing and visualization
- XR integration
- Tile server capabilities
-
Robotics Integration
- ROS2 node management
- Sensor data processing
- Navigation and control
-
Update environment variables:
DEBUG=False ALLOWED_HOSTS=your-domain.com SECRET_KEY=your-secure-key
-
Configure SSL/TLS:
- Update nginx.conf with SSL settings
- Add SSL certificates
- Enable HTTPS redirects
-
Set up monitoring:
- Configure logging
- Set up system monitoring
- Enable backup systems
- Fork the repository
- Create a feature branch
- Submit a pull request with detailed description
- Follow coding standards and documentation guidelines
This project is licensed under Creative Commons Legal Code CC0 1.0 Universal - see the LICENSE file for details. This means you can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.
For support and questions:
- Check the documentation in respective project directories
- Open an issue in the repository
- Contact the Dreams Laboratory team
- Dreams Laboratory Research Team
- OpenUAV Project Contributors
- DeepGIS Community
- ROS2 Community