Awesome
<a href="https://107-systems.org/"><img align="right" src="https://raw.githubusercontent.com/107-systems/.github/main/logo/107-systems.png" width="15%"></a>
:floppy_disk: l3xz_head_ctrl
Head controller for the L3X-Z electric/hydraulic hexapod robot.
<p align="center">
<a href="https://github.com/107-systems/l3xz"><img src="https://raw.githubusercontent.com/107-systems/.github/main/logo/l3xz-logo-memento-mori-github.png" width="40%"></a>
</p>
How-to-build
git clone https://github.com/gsl-lite/gsl-lite && cd gsl-lite
mkdir build && cd build
cmake .. && make -j8
sudo make install
git clone https://github.com/catchorg/Catch2 && cd Catch2
mkdir build && cd build
cmake .. && make -j8
sudo make install
git clone https://github.com/fmtlib/fmt && cd fmt
mkdir build && cd build
cmake -DFMT_TEST=OFF ..
make -j8
sudo make install
git clone https://github.com/mpusz/mp-units && cd mp-units
git checkout v2.0.0
mkdir build && cd build
cmake -DMP_UNITS_AS_SYSTEM_HEADERS=ON -DMP_UNITS_BUILD_LA=OFF ..
make -j8
sudo make install
cd $COLCON_WS/src
git clone https://github.com/107-systems/l3xz_head_ctrl
cd $COLCON_WS
source /opt/ros/humble/setup.bash
colcon build --packages-select l3xz_head_ctrl
How-to-run
colcon_ws$
. install/setup.bash
ros2 launch l3xz_head_ctrl head_ctrl.py
Interface Documentation
Subscribed Topics
Published Topics
Default name | Type | Description |
---|
/l3xz/l3xz_head_ctrl/heartbeat | std_msgs/UInt64 | Heartbeat signal containing the node uptime in seconds. |
/l3xz/head/pan/mode/set | msg/Mode.msg | Pan servo operation mode (Position Control / Angular Velocity Control) |
/l3xz/head/pan/angle/target | std_msgs/Float32 | Pan servo target angle / rad |
/l3xz/head/pan/angular_velocity/target | std_msgs/Float32 | Pan servo target angular velocity / rad/sec |
/l3xz/head/tilt/mode/set | msg/Mode.msg | Pan servo operation mode (Position Control / Angular Velocity Control) |
/l3xz/head/tilt/angle/target | std_msgs/Float32 | Tilt servo target angle / rad |
/l3xz/head/tilt/angular_velocity/target | std_msgs/Float32 | Tilt servo target angular velocity / rad/sec |
Parameters
Name | Default | Description |
---|
pan_servo_initial_angle | 180.0 | Initial angle of the pan servo after startup / deg. |
pan_servo_min_angle | 170.0 | Min. angle of then pan servo / deg. |
pan_servo_max_angle | 190.0 | Max. angle of then pan servo / deg. |
tilt_servo_initial_angle | 90.0 | Initial angle of the tilt servo after startup / deg. |
tilt_servo_min_angle | 80.0 | Min. angle of then tilt servo / deg. |
tilt_servo_max_angle | 100.0 | Min. angle of then tilt servo / deg. |