No version for distro humble showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange

No version for distro jazzy showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange

No version for distro kilted showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange

No version for distro rolling showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange

No version for distro galactic showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange

No version for distro iron showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange

No version for distro melodic showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange

No version for distro noetic showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.0
License Apache-2.0
Build type AMENT_PYTHON
Use RECOMMENDED

Repository Summary

Description Reachy 2023 workspace
Checkout URI https://github.com/pollen-robotics/reachy_2023.git
VCS Type git
VCS Version develop
Last Updated 2025-03-27
Dev Status UNKNOWN
Released UNRELEASED
Tags rust robotics ros2
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ROS2 Humble package to control the mobile base.

Additional Links

No additional links.

Maintainers

  • Pollen Robotics

Authors

No additional authors.

Zuuu Hardware Abstraction Layer

Purpose

Zuuu HAL has the responsability to interact with Zuuu’s (Reachy’s mobile base) hardware and ‘ROSify’ the inputs and outputs.

The HAL will periodically read the selected measurements from the controllers of the wheels (speed, temperature, voltage, etc) and publish them into the adequate topics or services. The odometry is calculated and published (/odom topic and TF transform).

Several interfaces to control the mobile base are exposed such as sending (x_vel, y_vel, theta_vel) speed commands or setting a (x, y, theta) goal position in the odometric frame. See usage for details

Installation

Clone and install this repository

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_hal.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

Clone and install our custom version of PyVESC:

cd ~/dev
git clone https://github.com/pollen-robotics/PyVESC.git
pip3 install -e PyVESC/

Install:

sudo apt install ros-foxy-tf-transformations
pip3 install transforms3d

Dependencies

cd ~/reachy_ws/src
git clone https://github.com/pollen-robotics/zuuu_interfaces.git
cd ~/reachy_ws
colcon build --packages-select zuuu_hal
source ~/.bashrc

git clone https://github.com/pollen-robotics/zuuu_interfaces

For the installation of this package, refer to the dedicated README.

Usage

Running the HAL

For all ROS based use cases, the zuuu_hal node must be running :

ros2 launch zuuu_hal hal.launch.py

Running the HAL and the Mobile base SDK server

If you want to use our Python SDK to control the mobile base with Python commands instead of working at the ROS level, you will have to launch both the HAL and the Mobile base SDK server. See run_mobile_base_sdk_server_and_hal.launch.py from the mobile base SDk server for this.

Sending speed commands

Once the zuuu_hal is started, one can take control of the mobile base with: 1) A controller

ros2 run zuuu_hal teleop_joy

2) A keyboard

ros2 run zuuu_hal teleop_keyboard

3) Sending speed commands on the ‘cmd_vel’ topic. 4) Using the SetSpeed service 5) Using the GoToXYTheta service

SetSpeed service

Sets a constant speed for a given duration. Zuuu should make a full rotation with this call:

ros2 service call /SetSpeed zuuu_interfaces/srv/SetSpeed "{x_vel: 0.0, y_vel: 0.0, rot_vel: 2.0, duration: 3.1415}"

This script makes Zuuu draw a 1mx1m square (front, right, back, left) using the SetSpeed service:

ros2 run zuuu_hal set_speed_service_test

GoToXYTheta service

Sets a goal position in the odom frame. Zuuu will try to reach that position using 3 separate PIDs (one for x, one for y and one for theta). Zuuu should go to position X=0.5, y=0.0, theta=0.0. If one resets the odom frame, this should be equivalent to moving forward 0.5m.

ros2 service call /ResetOdometry zuuu_interfaces/srv/ResetOdometry "{}"
ros2 service call /GoToXYTheta zuuu_interfaces/srv/GoToXYTheta "{x_goal: 0.5, y_goal: 0.0, theta_goal: 0.0}"

To check the current distance from the goal:

ros2 service call /DistanceToGoal zuuu_interfaces/srv/DistanceToGoal "{}"

Use the IsGoToFinished service to know if the goal position is reached:

ros2 service call /IsGoToFinished zuuu_interfaces/srv/IsGoToFinished "{}"

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Package Dependencies

System Dependencies

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged zuuu_hal at Robotics Stack Exchange