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

[ROS2:Foxy] Added ros2 support #5

Open
wants to merge 32 commits into
base: master
Choose a base branch
from
Open

Conversation

MRo47
Copy link

@MRo47 MRo47 commented Sep 3, 2022

Added ros2 support

  • Tested on ubuntu 20.04, foxy
  • Added interprocess communication capabilities
  • Added more logging (buffer empty / no image in buffer)
  • Added install instructions in readme.
  • Added config files for testing
  • Separated interfaces (msg/srvs), I think there is an issue or its intended to keep interfaces separate in ros2. Currently they are here.
  • Once we confirm this is working, I'll add them here like the following structure. Didn't add directly as this would make this PR difficult to review.
rc_genicam_camera/
├── rc_genicam_camera
│   ├── CHANGELOG.rst
│   ├── CMakeLists.txt
│   ├── LICENSE
│   ├── README.md
│   ├── cmake
│   ├── config
│   ├── include
│   ├── launch
│   ├── package.xml
│   ├── rc_genicam_camera_nodelet.xml
│   ├── rosdoc.yaml
│   ├── run_clang_format.sh
│   └── src
└── rc_genicam_camera_interfaces
    ├── CMakeLists.txt
    ├── msg
    ├── package.xml
    └── srv

Hardware used for tests

  • Genicam compliant Flir and Basler GiGE cameras

Build and Install

cd ros_ws/src/
git clone <this repo>
cd rc_genicam_camera
git checkout <ros2 branch>
cd ..
git clone https://github.com/MRo47/rc_genicam_camera_interfaces
cd ..
rosdep update
rosdep install --from-paths src -y --ignore-src
colcon build

Run and check camera node

# from ros2_ws
# modify camera config files in `config`, run colcon build again after any mod as they need to be installed
source install/setup.bash
ros2 launch rc_genicam_camera rc_genicam_camera_launch.py

# in another terminal from ros2_ws
source install/setup.bash
ros2 run rqt_image_view rqt_image_view
# select relevant topic /image_raw

Required input

  • Might have to keep this in separate ros2 branch? or I'm happy to keep in my github
  • Remove nodelet xml? as there are no nodelets in ros2
  • Cleanup package xml (dynamic reconfigure not sure what it does and if required, maybe lifecycle node does the same)
  • Cleanup cmakelists (the commented out install part, dont think its required anymore?)

TODO / Might cover in future PR

  • Lifecycle nodes

Closes #3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ROS2 support for rc_genicam_camera
1 participant