Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Users/ajyanand/rgbd camera stream #32

Merged
merged 13 commits into from
Oct 12, 2023
9 changes: 6 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[submodule "DynamixelSDK"]
path = DynamixelSDK
url = [email protected]:ROBOTIS-GIT/DynamixelSDK.git
# [submodule "DynamixelSDK"]
# path = DynamixelSDK
# url = [email protected]:ROBOTIS-GIT/DynamixelSDK.git
# [submodule "depthai-ros"]
# path = depthai-ros
# url = [email protected]:luxonis/depthai-ros.git
1 change: 0 additions & 1 deletion DynamixelSDK
Submodule DynamixelSDK deleted from 3450c7
10 changes: 7 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Flo-System-2
This is the master code repository for the second iteration of the Flo system.

The system is currently in development, all code is subject to change.
## License:

MIT License.
Expand All @@ -15,14 +15,17 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI

## Overview:

This system is intended to run on a development edition ohmni telepresence robot with docker installed.

This repository contains the following components:

1. Control system of the humanoid robot (Dynamixel motors: 2 XL430-W250-T, 1 XC430-W240-T, 1 XM430-W350-T and 1 RX-64 motor per arm)
2. Control system of the mobile telepresence platform (Ohmni telepresence platform)
3. RGB-D cameras (2 Luxonis Oak-D cameras)
4. 2 dimensional lidar sensor (rp lidar a1)
3. RGB telepresence and navigation cameras (forwards facing and downwards facing)
4. RGB-D cameras (2 Luxonis Oak-D cameras)
5. object localization system (April tag 3)
6. Centeral user interface (web interface?)
7. 2 dimensional lidar sensor (rp lidar a1)

The system is designed to be modular and each component can be run independently, ROS is used as the communication framework between the components.

Expand All @@ -37,3 +40,4 @@ Each component will be running as a seperate process in a docker container and i
5. docker attach flo_system



38 changes: 38 additions & 0 deletions dev_system/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
FROM ros:melodic-robot-bionic
#make super user
RUN su
ARG ROS_DISTRO=melodic
ENV ROS_DISTRO="$ROS_DISTRO"
#install essential tools
RUN apt-get update -y && apt-get install -y \
neovim \
tmux \
git \
ros-$ROS_DISTRO-catkin \
ros-$ROS_DISTRO-dynamixel-sdk\
ros-$ROS_DISTRO-dynamixel-sdk-examples

#Lidar libraries
#RUN git clone https://github.com/Slamtec/rplidar_ros.git

#Build the catkin_ws
# clear cache
RUN apt-get clean

RUN mkdir -p home/git
WORKDIR /home/git
RUN git clone https://github.com/Rehab-Robotics-Lab/FloSystemV2.git
WORKDIR /home/git
# RUN mkdir -p catkin_ws
# RUN cp -r /FloSystemV2/flo_humanoid /catkin_ws/src catkin_ws/flo_humanoid
# RUN cp -r /FloSystemV2/flo_humanoid_defs /catkin_ws/src catkin_ws/flo_humanoid_defs
# WORKDIR /home/git/catkin_ws
# RUN catkin_make -j1 -l1

# ENTRYPOINT ["./ros_entrypoint.sh"]
# CMD ["bash"]





37 changes: 37 additions & 0 deletions flo_depthcam/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
FROM ros:noetic-robot-focal
#make super user (running all commands as root)
#might want to fix that later for security and to make sure we don't mess up the ros user.
RUN su
ARG ROS_DISTRO=noetic
ENV ROS_DISTRO="$ROS_DISTRO"
#install essential tools
RUN apt-get update -y && apt-get install -y \
neovim \
tmux \
git \
ros-$ROS_DISTRO-catkin \
#install the depthai ros package for the luxonis oak-d depth camera
ros-<distro>-depthai-ros

#set udev rules for the luxonis oak-d depth camera to make it mounts at the correct location.
RUN echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="03e7", MODE="0666"' | sudo tee /etc/udev/rules.d/80-movidius.rules
RUN udevadm control --reload-rules && sudo udevadm trigger


#Build the catkin_ws
# clear cache
RUN apt-get clean

RUN mkdir -p home/git
WORKDIR /home/git
RUN git clone https://github.com/Rehab-Robotics-Lab/FloSystemV2.git
WORKDIR /home/git
RUN mkdir -p catkin_ws
# RUN cp -r /FloSystemV2/flo_humanoid /catkin_ws/src catkin_ws/flo_humanoid
# RUN cp -r /FloSystemV2/flo_humanoid_defs /catkin_ws/src catkin_ws/flo_humanoid_defs

WORKDIR /home/git/catkin_ws
RUN catkin_make -j1 -l1

ENTRYPOINT ["./ros_entrypoint.sh"]
CMD ["bash"]
2 changes: 1 addition & 1 deletion flo_system/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
## Storage

The Ohmni telepresence platform this iteration of the flo system is built has 13gb of storage built in, this is used to store code, docker images and device drivers and config files.
An external NVME ssd has been added to the system with 2Tb of storage, this is to be used to capture video and sensor data from clincial trials, it is mounted at mnt/nvmeStorage
An external NVME ssd has been added to the system with 2Tb of storage, this is to be used to capture video and sensor data from clincial trials, it is mounted at mnt/nvmeStorage (dev/block/sda1 is the android default mount point)