From b51a47800a0cd73818bf9a39938f5d00346e4d91 Mon Sep 17 00:00:00 2001 From: Jakub Delicat Date: Fri, 1 Sep 2023 12:48:24 +0200 Subject: [PATCH 1/4] added spell check Signed-off-by: Jakub Delicat --- .github/workflows/spellcheck.yaml | 15 +++ .gitignore | 5 +- .pyspelling.yaml | 53 ++++++++ .wordlist.txt | 120 ++++++++++++++++++ README.md | 8 +- ROS_API.md | 4 +- rosbot_controller/launch/controller.launch.py | 2 - rosbot_gazebo/launch/simulation.launch.py | 2 - 8 files changed, 198 insertions(+), 11 deletions(-) create mode 100644 .github/workflows/spellcheck.yaml create mode 100644 .pyspelling.yaml create mode 100644 .wordlist.txt diff --git a/.github/workflows/spellcheck.yaml b/.github/workflows/spellcheck.yaml new file mode 100644 index 00000000..b03ace36 --- /dev/null +++ b/.github/workflows/spellcheck.yaml @@ -0,0 +1,15 @@ +name: Spellcheck Action + +on: + workflow_call: + pull_request: + push: + +jobs: + build: + name: Spellcheck + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: rojopolis/spellcheck-github-actions@0.33.1 + name: Spellcheck \ No newline at end of file diff --git a/.gitignore b/.gitignore index d9016775..c203cec3 100644 --- a/.gitignore +++ b/.gitignore @@ -9,4 +9,7 @@ rosbot_hardware_interfaces/ ros_components_description/ rosbot_controllers/ husarion/gazebo_worlds -gazebosim/gz_ros2_control \ No newline at end of file +gazebosim/gz_ros2_control + +# pyspelling +*.dic \ No newline at end of file diff --git a/.pyspelling.yaml b/.pyspelling.yaml new file mode 100644 index 00000000..92205887 --- /dev/null +++ b/.pyspelling.yaml @@ -0,0 +1,53 @@ +matrix: +- name: Python Source + aspell: + lang: en + d: en_US + camel-case: true + sources: + - 'rosbot*/**/*.py' + + dictionary: + encoding: utf-8 + output: wordlist.dic + wordlists: + - .wordlist.txt + + pipeline: + - pyspelling.filters.python: + comments: true + +- name: Markdown sources + aspell: + lang: en + d: en_US + camel-case: true + sources: + - 'rosbot*/**/*.md' + - 'rosbot*/**/*.txt' + dictionary: + encoding: utf-8 + output: wordlist.dic + wordlists: + - .wordlist.txt + + pipeline: + - pyspelling.filters.text + +- name: XML sources + aspell: + lang: en + d: en_US + camel-case: true + sources: + - 'rosbot*/**/*.xacro' + - 'rosbot*/**/*.urdf' + - 'rosbot*/**/*.xml' + dictionary: + encoding: utf-8 + output: wordlist.dic + wordlists: + - .wordlist.txt + + pipeline: + - pyspelling.filters.xml \ No newline at end of file diff --git a/.wordlist.txt b/.wordlist.txt new file mode 100644 index 00000000..a0da9633 --- /dev/null +++ b/.wordlist.txt @@ -0,0 +1,120 @@ +Imu +IMU +JointState +LaserScan +MultiArray +Odometry +ROSbot +TFMessage +bringup +cmd +config +ekf +gazebosim +gz +https +husarion +imu +github +msg +msgs +nav +odom +odometry +py +ros +rosbot +tf +vel +yaml +DISTRO +LTS +Metapackage +ROSbots +SteveMacenski +URDF +cd +colcon +autoremove +cra +init +md +mkdir +preconfigured +repos +rosdep +rosdistro +src +sudo +teleop +ubuntu +vcs +vcstool +ws +ament +os +pytest +setuptools +xml +cmake +CMAKE +CXX +DLL +GNUCXX +PLUGINLIB +RUNTIME +Wextra +Wpedantic +ament +cmake +cpp +endif +lifecycle +pluginlib +rclcpp +realtime +urdf +xml +ROSbot's +ROSbots +xacro +MECANUM +dll +dllexport +dllimport +endforeach +foreach +mecanum +rcpputils +apache +http +unstamped +www +xl +SDF +astra +cfg +gpu +ign +orbbec +pointcloud +rl +rosgraph +rr +sdf +webots +accelerometer +vl +gaussian +fdir +Krzysztof +Maciej +Stępień +Stepien +Wojciechowski +gtest +Delicat +Jakub +Bence +Palacios +env \ No newline at end of file diff --git a/README.md b/README.md index 7640eb4f..80927f12 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ROS2 packages for ROSbot 2R and ROSbot 2 PRO. Metapackage that contains dependencies to other repositories. ### `rosbot_bringup` -Package that contains launch, which starts all base functionalities. Also configs for [robot_localization](https://github.com/cra-ros-pkg/robot_localization) and [ros2_controllers](https://github.com/ros-controls/ros2_controllers) are defined there. +Package that contains launch, which starts all base functionalities. Also configuration for [robot_localization](https://github.com/cra-ros-pkg/robot_localization) and [ros2_controllers](https://github.com/ros-controls/ros2_controllers) are defined there. ### `rosbot_description` URDF model used as a source of transforms on the physical robot. It was written to be compatible with ROS Industrial and preconfigured for ROS2 control. @@ -31,7 +31,7 @@ For detailed instructions refer to the [rosbot_ros2_firmware repository](https:/ ### Prerequisites -Install `colcon`, `vsc` and `rosdep`: +Install `colcon`, `vcs` and `rosdep`: ``` sudo apt-get update sudo apt-get install -y python3-colcon-common-extensions python3-vcstool python3-rosdep @@ -63,7 +63,7 @@ colcon build ``` > **Prerequisites** -> +> > Before starting the software on the robot please make sure that you're using the latest firmware and run the `micro-ROS` agent (as described in the *Usage on hardware* step). Running: @@ -73,7 +73,7 @@ ros2 launch rosbot_bringup bringup.launch.py ``` ### Build and run Gazebo simulation -Prerequirements: +Prerequisites: > **Warning** > The simulation is compatible with the Gazebo Fortress LTS version. Use [this installation guide ](https://gazebosim.org/docs/fortress/install_ubuntu#binary-installation-on-ubuntu) to install the proper version and remove the another versions e. g. Gazebo Garden: diff --git a/ROS_API.md b/ROS_API.md index d4474a49..63336694 100644 --- a/ROS_API.md +++ b/ROS_API.md @@ -13,7 +13,7 @@ Use `bringup.launch.py` from `rosbot_bringup` to start all base functionalities - `controller.launch.py` from `rosbot_controller`, it loads robot model defined in `rosbot_description` as well as ros2 control [rosbot_hardware_interfaces](https://github.com/husarion/rosbot_hardware_interfaces). It also starts controllers: * `joint_state_broadcaster` - * `rosbot_base_controller` - `DiffDriveController` + * `rosbot_base_controller` * `imu_broadcaster` **Subscribes** @@ -30,4 +30,4 @@ Use `bringup.launch.py` from `rosbot_bringup` to start all base functionalities Use `simulation.launch.py` from `rosbot_gazebo` to start all base functionalities for ROSbot 2, 2 PRO, 2R in the Gazebo simulator. > **Warning** -> The distance sensors' topics types from Gazebo simulation mismatch with the real ones. The range sensors are not implemented yet in the Gazebo Ingition (for more informations look [here](https://github.com/gazebosim/gz-sensors/issues/19)). The real type is [sensor_msgs/msg/Range](https://github.com/ros2/common_interfaces/blob/rolling/sensor_msgs/msg/Range.msg) but simulated [sensor_msgs/msg/LaserScan](https://github.com/ros2/common_interfaces/blob/rolling/sensor_msgs/msg/LaserScan.msg). The first value of the `ranges` in [sensor_msgs/msg/LaserScan](https://github.com/ros2/common_interfaces/blob/rolling/sensor_msgs/msg/LaserScan.msg) is the `range` field of [sensor_msgs/msg/Range](https://github.com/ros2/common_interfaces/blob/rolling/sensor_msgs/msg/Range.msg). +> The distance sensors' topics types from Gazebo simulation mismatch with the real ones. The range sensors are not implemented yet in the Gazebo Ignition (for more information look [here](https://github.com/gazebosim/gz-sensors/issues/19)). The real type is [sensor_msgs/msg/Range](https://github.com/ros2/common_interfaces/blob/rolling/sensor_msgs/msg/Range.msg) but simulated [sensor_msgs/msg/LaserScan](https://github.com/ros2/common_interfaces/blob/rolling/sensor_msgs/msg/LaserScan.msg). The first value of the `ranges` in [sensor_msgs/msg/LaserScan](https://github.com/ros2/common_interfaces/blob/rolling/sensor_msgs/msg/LaserScan.msg) is the `range` field of [sensor_msgs/msg/Range](https://github.com/ros2/common_interfaces/blob/rolling/sensor_msgs/msg/Range.msg). diff --git a/rosbot_controller/launch/controller.launch.py b/rosbot_controller/launch/controller.launch.py index 9fa9c8b1..93620931 100644 --- a/rosbot_controller/launch/controller.launch.py +++ b/rosbot_controller/launch/controller.launch.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python3 - # Copyright 2020 ros2_control Development Team # Copyright 2023 Husarion # diff --git a/rosbot_gazebo/launch/simulation.launch.py b/rosbot_gazebo/launch/simulation.launch.py index 5e3600ff..3d863871 100644 --- a/rosbot_gazebo/launch/simulation.launch.py +++ b/rosbot_gazebo/launch/simulation.launch.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python3 - from launch import LaunchDescription from launch.actions import ( IncludeLaunchDescription, From d7a3155018ae552184512de493bc93d8d3e32104 Mon Sep 17 00:00:00 2001 From: rafal-gorecki <126687345+rafal-gorecki@users.noreply.github.com> Date: Wed, 20 Sep 2023 16:09:02 +0200 Subject: [PATCH 2/4] Update .github/workflows/spellcheck.yaml --- .github/workflows/spellcheck.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/spellcheck.yaml b/.github/workflows/spellcheck.yaml index b03ace36..b4d92885 100644 --- a/.github/workflows/spellcheck.yaml +++ b/.github/workflows/spellcheck.yaml @@ -1,9 +1,10 @@ name: Spellcheck Action on: - workflow_call: pull_request: push: + branches: + - humble jobs: build: From 15746a481e1801a472470217bafe7b83ec34fa0d Mon Sep 17 00:00:00 2001 From: rafal-gorecki Date: Wed, 20 Sep 2023 16:16:28 +0200 Subject: [PATCH 3/4] test spellcheck --- rosbot_bringup/launch/bringup.launch.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/rosbot_bringup/launch/bringup.launch.py b/rosbot_bringup/launch/bringup.launch.py index aef42ba0..42b5c40b 100644 --- a/rosbot_bringup/launch/bringup.launch.py +++ b/rosbot_bringup/launch/bringup.launch.py @@ -6,6 +6,7 @@ from launch.launch_description_sources import PythonLaunchDescriptionSource from launch.substitutions import LaunchConfiguration, PathJoinSubstitution +# asda def generate_launch_description(): use_sim = LaunchConfiguration("use_sim") @@ -58,14 +59,14 @@ def generate_launch_description(): }.items(), ) - ekf_config = PathJoinSubstitution([rosbot_bringup, "config", "ekf.yaml"]) + usser = PathJoinSubstitution([rosbot_bringup, "config", "ekf.yaml"]) robot_localization_node = Node( package="robot_localization", executable="ekf_node", name="ekf_filter_node", output="screen", - parameters=[ekf_config], + parameters=[usser], ) actions = [ From f5e7ae4a93f83ecad8d6678a4012d5c4ed13eb93 Mon Sep 17 00:00:00 2001 From: rafal-gorecki Date: Wed, 20 Sep 2023 16:18:16 +0200 Subject: [PATCH 4/4] undo --- rosbot_bringup/launch/bringup.launch.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/rosbot_bringup/launch/bringup.launch.py b/rosbot_bringup/launch/bringup.launch.py index 42b5c40b..aef42ba0 100644 --- a/rosbot_bringup/launch/bringup.launch.py +++ b/rosbot_bringup/launch/bringup.launch.py @@ -6,7 +6,6 @@ from launch.launch_description_sources import PythonLaunchDescriptionSource from launch.substitutions import LaunchConfiguration, PathJoinSubstitution -# asda def generate_launch_description(): use_sim = LaunchConfiguration("use_sim") @@ -59,14 +58,14 @@ def generate_launch_description(): }.items(), ) - usser = PathJoinSubstitution([rosbot_bringup, "config", "ekf.yaml"]) + ekf_config = PathJoinSubstitution([rosbot_bringup, "config", "ekf.yaml"]) robot_localization_node = Node( package="robot_localization", executable="ekf_node", name="ekf_filter_node", output="screen", - parameters=[usser], + parameters=[ekf_config], ) actions = [