Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Практические задания

Задание 1: Издатель CPUInfo

  1. Создайте cpu_info_publisher.py с таймером 1 сек
  2. Читайте температуру из /sys/class/thermal/thermal_zone0/temp
  3. Читайте частоты CPU из /sys/devices/system/cpu/cpuN/cpufreq/scaling_cur_freq (N=0..3)
  4. Публикуйте в топик с типом robot_msgs/msg/CPUInfo
  5. Добавьте в пакет и протестируйте через ros2 run

Задание 2: Сервис сложения трех чисел

  1. Создайте add_three_ints_server.py с сервисом типа robot_msgs/srv/AddThreeInts
  2. В callback суммируйте request.x + request.y + request.z
  3. Возвращайте результат в response.sum
  4. Добавьте в пакет и протестируйте: ros2 service call /add_three_ints robot_msgs/srv/AddThreeInts "{x: 1, y: 2, z: 3}"

Задание 3: Новое сообщение

  1. Создайте msg/RobotState.msg в пакете robot_msgs
  2. Добавьте поля: geometry_msgs/Twist twist и sensor_msgs/Imu imu
  3. Обновите CMakeLists.txt и package.xml (добавьте зависимости)
  4. Соберите пакет и проверьте: ros2 interface show robot_msgs/msg/RobotState