Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions devdocs/Architecture.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# VisualCircuit

![Architecture](./images/Architecture.png)

## Frontend
Binary file added devdocs/images/Architecture.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
17 changes: 17 additions & 0 deletions docker/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/bin/bash

# GAZEBO
export GAZEBO_RESOURCE_PATH=$GAZEBO_RESOURCE_PATH:/usr/share/gazebo-11:/RoboticsAcademy/exercises/follow_line/web-template/launch/:/RoboticsAcademy/exercises/obstacle_avoidance/web-template/launch/:/RoboticsAcademy/exercises/vacuum_cleaner/web-template/launch/:/RoboticsAcademy/exercises/vacuum_cleaner_loc/web-template/launch/:/RoboticsAcademy/exercises/3d_reconstruction/web-template/launch/:/RoboticsAcademy/exercises/global_navigation/web-template/launch/:/RoboticsAcademy/exercises/car_junction/web-template/:/RoboticsAcademy/exercises/opticalflow_teleop/web-template/launch/:/RoboticsAcademy/exercises/autoparking/web-template/:/RoboticsAcademy/exercises/montecarlo_visual_loc/web-template/launch/
export GAZEBO_PLUGIN_PATH=$GAZEBO_PLUGIN_PATH:/usr/lib/x86_64-linux-gnu/gazebo-11/plugins:/PX4-Autopilot/build/px4_sitl_default/build_gazebo
export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/usr/share/gazebo-11/models:/opt/jderobot/CustomRobots/f1/models:/opt/jderobot/CustomRobots/roomba_robot/models:/opt/jderobot/CustomRobots/3d_reconstruction/models:/opt/jderobot/CustomRobots/Taxi_navigator/models:/opt/jderobot/CustomRobots/car_junction/models:/PX4-Autopilot/Tools/sitl_gazebo/models:/catkin_ws/src/drones/drone_assets/models:/opt/jderobot/CustomRobots/package_delivery/models:/opt/jderobot/CustomRobots/power_tower_inspection/models
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/x86_64-linux-gnu/gazebo-11/plugins:/PX4-Autopilot/build/px4_sitl_default/build_gazebo

# PX4 (and ROS)
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:/PX4-Autopilot:/PX4-Autopilot/Tools/sitl_gazebo

# STDR
export STDR_LAUNCH=/opt/jderobot/CustomRobots/stdr_simulator/stdr_launchers/launch
export STDR_RESOURCES=/opt/jderobot/CustomRobots/stdr_simulator/stdr_resources

# Default rendering display
export DISPLAY=:0
21 changes: 21 additions & 0 deletions docker/.rosinstall
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
repositories:

mavlink:
type: git
url: https://github.com/mavlink/mavlink-gbp-release.git
version: release/kinetic/mavlink/2021.3.3-1

mavros:
type: git
url: https://github.com/mavlink/mavros.git
version: 1.9.0

drones:
type: git
url: https://github.com/JdeRobot/drones.git
version: noetic-devel

stdr_simulator:
type: git
url: https://github.com/stdr-simulator-ros-pkg/stdr_simulator.git
version: indigo-devel
60 changes: 60 additions & 0 deletions docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
FROM jderobot/base:3.2

RUN python3.8 -m pip install aiohttp cchardet python-socketio

# Custom Robot Repository
RUN mkdir -p /opt/jderobot && cd /opt/jderobot && \
git clone -b $ROS_DISTRO-devel https://github.com/JdeRobot/CustomRobots.git

# bootstrap rosdep
RUN rosdep init && rosdep update

# jderobot_drones src and stdr simulator
RUN add-apt-repository ppa:rock-core/qt4 -y && \
apt update --fix-missing
RUN rm -rf /catkin_ws && \
mkdir -p /catkin_ws/src && \
cd /catkin_ws && \
catkin init
COPY .rosinstall /tmp/
RUN vcs import /catkin_ws/src < /tmp/.rosinstall

RUN cd /catkin_ws && rosdep install --from-paths src --ignore-src -y --rosdistro $ROS_DISTRO
RUN cd /catkin_ws && rosdep update && rosdep install --from-paths . --ignore-src --rosdistro $ROS_DISTRO -y
RUN /bin/bash -c '. /opt/ros/$ROS_DISTRO/setup.bash; cd /catkin_ws; catkin build -p 1 -j 1'


# Scripts copy
COPY [".env", "manager.py","entrypoint.sh", "./"]

RUN rm -rf /usr/bin/python /usr/bin/python2 /usr/bin/python2.7 \
&& ln -s /usr/bin/python3.8 /usr/bin/python

# Django server
EXPOSE 8000

# Manager websocket
EXPOSE 8765

# Code websocket
EXPOSE 1905
EXPOSE 1904

# GUI websockets
EXPOSE 2303
EXPOSE 2304

# noVNC Console
EXPOSE 1108

# noVNC Gazebo
EXPOSE 6080

# WebRtc
EXPOSE 1831

EXPOSE 5900


ENTRYPOINT [ "./entrypoint.sh" ]
# CMD ["--help"]
Loading