Skip to content

Latest commit

 

History

History
221 lines (152 loc) · 5.91 KB

README.en.md

File metadata and controls

221 lines (152 loc) · 5.91 KB

English | 日本語

raspimouse_sim

industrial_ci

ROS 2 package suite for Raspberry Pi Mouse Simulator runs on Gazebo

This branch is intended for ROS 2 Jazzy. For other distributions, please refer to the corresponding branches listed below.

Requirements

requires the following to run:

  • Ubuntu
    • Ubuntu 24.04 Noble Numbat
  • ROS 2
    • ROS 2 Jazzy Jalisco
  • Gazebo
    • Gazebo Sim 8.x
  • ROS 2 Package
    • ros-jazzy-desktop-full

Installation

Download this ROS 2 package.

cd ~/ros2_ws/src
git clone -b $ROS_DISTRO https://github.com/rt-net/raspimouse_sim.git

Download the dependent ROS 2 packages.

cd ~/ros2_ws/src
git clone -b $ROS_DISTRO https://github.com/rt-net/raspimouse_ros2_examples.git
git clone -b $ROS_DISTRO https://github.com/rt-net/raspimouse_slam_navigation_ros2.git
git clone -b $ROS_DISTRO https://github.com/rt-net/raspimouse_description.git
rosdep install -r -y -i --from-paths raspimouse*

Build this package using colcon.

cd ~/ros2_ws
colcon build --symlink-install
source ~/ros2_ws/install/setup.bash

QuickStart

After building this package, run the following commands.

ros2 launch raspimouse_gazebo raspimouse_with_emptyworld.launch.py

Examples

These exsamples require raspimouse_ros2_examples to operate.

Joystick Controll

Terminal 1:

ros2 launch raspimouse_gazebo raspimouse_with_emptyworld.launch.py

Terminal 2:

ros2 launch raspimouse_ros2_examples teleop_joy.launch.py joydev:="/dev/input/js0" joyconfig:=f710 mouse:=false

Object Tracking

Terminal 1:

ros2 launch raspimouse_gazebo raspimouse_with_color_objects.launch.py use_rgb_camera:=true

Terminal 2:

ros2 launch raspimouse_ros2_examples object_tracking.launch.py mouse:=false use_camera_node:=false

camera_line_follower

Terminal 1:

ros2 launch raspimouse_gazebo raspimouse_with_line_follower_field.launch.py use_rgb_camera:=true camera_downward:=true

Terminal 2:

ros2 launch raspimouse_ros2_examples camera_line_follower.launch.py mouse:=false use_camera_node:=false

Terminal 3: Start

ros2 topic pub --once /switches raspimouse_msgs/msg/Switches "{switch0: false, switch1: false, switch2: true}"

Terminal 3: Stop

ros2 topic pub --once /switches raspimouse_msgs/msg/Switches "{switch0: true, switch1: false, switch2: false}"

For information on parameters in camera line follower, click here.

SLAM & Navigation

This exsample requires raspimouse_slam_navigation_ros2 to operate.

SLAM

Terminal 1:

ros2 launch raspimouse_gazebo raspimouse_with_lakehouse.launch.py lidar:=urg

The lidar option supports urg, lds, and rplidar.

Terminal 2:

ros2 launch raspimouse_ros2_examples teleop_joy.launch.py joydev:="/dev/input/js0" joyconfig:=f710 mouse:=false

Terminal 3:

ros2 launch raspimouse_slam pc_slam.launch.py

Terminal 4:

ros2 run nav2_map_server map_saver_cli -f ~/MAP_NAME

Navigation

Terminal 1:

ros2 launch raspimouse_gazebo raspimouse_with_lakehouse.launch.py lidar:=urg

The lidar option supports urg, lds, and rplidar.

Terminal 2:

ros2 launch raspimouse_navigation pc_navigation.launch.py use_sim_time:=true map:=$HOME/MAP_NAME.yaml

Model data list

course_curve_50x50cm

Curve course panel for line following. Panel size is 50 cm x 50 cm and line width is 4 cm.

course_straight_50x50cm

Straight course panel for line following. Panel size is 50 cm x 50 cm and line width is 4 cm.

cube_*cm_color-name

Each cube is 5 cm, 7.5 cm, 10 cm, and 15 cm, 30 cm on a side. The cube colors are red, yellow, blue, green and black.

about dae files

The dae file is edited in Blender 4.0.

License

This repository is licensed under the MIT license, see LICENSE. Unless attributed otherwise, everything in this repository is under the MIT license.

Acknowledgements