📚
ROS Robotics Projects
  • Титульная страница
  • Термины
  • Глава 1. Начало работы с разработкой приложений ROS Robotics
    • Подглава 1.1 Начало работы с ROS
      • Подглава 1.1.1 Дистрибутивы ROS
      • Подглава 1.1.2 Поддерживаемые операционные системы
      • Подглава 1.1.3 Роботы и датчики, поддерживаемые ROS
      • Подглава 1.1.4 Почему ROS?
    • Подглава 1.2 Основы ROS
      • Подглава 1.2.1 Уровень файловой системы
      • Подглава 1.2.2 Уровень графов вычислений
      • Подглава 1.2.3 Уровень сообщества ROS
      • Подглава 1.2.4 Общение в ROS
    • Подглава 1.3 Клиентские библиотеки ROS
    • Подглава 1.4 Инструменты ROS
      • Подглава 1.4.1 Rviz (Визуализатор ROS)
      • Подглава 1.4.2 rqt_plot
      • Подглава 1.4.3 rqt_graph
    • Подглава 1.5 Симуляторы ROS
    • Подглава 1.6 Установка ROS kinetic на Ubuntu 16.04 LTS
      • Подглава 1.6.1 Начало работы с установкой
        • Подглава 1.6.1.1 Настройка репозиториев Ubuntu
        • Подглава 1.6.1.2 Настройка source.list
        • Подглава 1.6.1.3 Настройка ключей
        • Подглава 1.6.1.4 Установка ROS
        • Подглава 1.6.1.5 Инициализация rosdep
        • Подглава 1.6.1.6 Настройка среды ROS
        • Подглава 1.6.1.7 Получение rosinstall
    • Подглава 1.7 Настройка ROS на VirtualBox
    • Подглава 1.8 Настройка рабочего пространства ROS
    • Подглава 1.9 Возможности для ROS в отраслях и исследованиях
    • Подглава 1.10 Вопросы
    • Подглава 1.11 Заключение
  • Глава 2. Обнаружение и отслеживание лиц с использованием ROS, OpenCV и Dynamixel Servos
    • Подглава 2.1 Обзор проекта
    • Подглава 2.2 Аппаратные и программные предпосылки
      • Подглава 2.2.1 Установка зависимых пакетов ROS
        • Подглава 2.2.1.1 Установка пакета usb_cam ROS
          • Подглава 2.2.1.1.1 Создание рабочей области ROS для зависимостей
    • Подглава 2.3 Взаимодействие Dynamixel с ROS
      • Подглава 2.3.1 Установка пакетов ROS dynamicixel_motor
    • Подглава 2.4 Создание ROS-пакетов для трекера лица
      • Подглава 2.4.1 Интерфейс между ROS и OpenCV
    • Подглава 2.5 Работа с ROS-пакетом для отслеживания лиц
      • Подглава 2.5.1 Понимание кода трекера лица
      • Подглава 2.5.2 Понимание CMakeLists.txt
      • Подглава 2.5.3 Файл track.yaml
      • Подглава 2.5.4 Файлы запуска
      • Подглава 2.5.5 Запуск узла отслеживания лица
      • Подглава 2.5.6Пакет face_tracker_control
        • Подглава 2.5.6.1 Файл запуска start_dynamixel
        • Подглава 2.5.6.2 Файл запуска контроллера панорамирования
      • Подглава 2.5.7 Файл конфигурации контроллера панорамирования
      • Подглава 2.5.8 Файл конфигурации параметров сервосистемы
      • Подглава 2.5.9 Узел контроллера трекера лица
      • Подглава 2.5.10 Создание CMakeLists.txt
      • Подглава 2.5.11 Тестирование пакета управления трекером лица
      • Подглава 2.5.12 Соединение всех узлов вместе
      • Подглава 2.5.13 Закрепление кронштейна и настройка цепи
      • Подглава 2.5.14 Финальный запуск
    • Подглава 2.6 Вопросы
    • Подглава 2.7 Заключение
Powered by GitBook
On this page

Was this helpful?

  1. Глава 1. Начало работы с разработкой приложений ROS Robotics
  2. Подглава 1.2 Основы ROS

Подглава 1.2.2 Уровень графов вычислений

PreviousПодглава 1.2.1 Уровень файловой системыNextПодглава 1.2.3 Уровень сообщества ROS

Last updated 5 years ago

Was this helpful?

Граф вычислений ROS является одноранговой сетью процесса ROS и обрабатывает данные вместе. Концепции графа вычисления ROS - это узлы, темы, сообщения, мастер, сервер параметров, сервисы и пакеты:

На предыдущем рисунке показаны различные концепции вычислительного графа ROS. Вот краткое описание каждой концепции:

  • Узлы: Узлы ROS - это просто процесс, использующий API ROS для связи друг с другом. Робот может иметь много узлов для выполнения своих вычислений. Например, автономный мобильный робот может иметь узел, отдельно для сопряжения аппаратных средств, считывания лазерных сканирований, а также локализации и отображения. Мы можем создавать узлы ROS, используя клиентские библиотеки ROS, такие как ros cpp и rospy, которые мы обсудим в следующих разделах.

  • Мастер: Мастер ROS работает как промежуточный узел, который помогает соединениям между различными узлами ROS. Мастер содержит детальную информацию обо всех узлах, работающих в среде ROS. Он будет обмениваться данными одного узла с другим, чтобы установить связь между ними. После обмена информацией начнется связь между двумя узлами ROS.

  • Сервер параметров: Сервер параметров - довольно полезная вещь в ROS. Узел может хранить переменную на сервере параметров и устанавливать свою конфиденциальность. Если параметр имеет глобальную область, к нему могут обращаться все остальные узлы. Параметр ROS работает вместе с мастером ROS.

  • Сообщения: узлы ROS могут общаться друг с другом разными способами. Во всех методах узлы отправляют и получают данные в форме сообщений ROS. Сообщение ROS - это структура данных, используемая узлами ROS для обмена данными.

  • Topics: один из методов обмена сообщениями ROS и обмена ими между двумя узлами ROS называется topics ROS. Topics именуются шинами, в которых данные обмениваются с использованием сообщений ROS. Каждый topic будет иметь определенное имя, и один узел будет публиковать данные в topic, а другой узел может читать из topic, подписавшись на нее.

  • Сервисы: Сервисы - это еще один способ общения, на подобии, topic. Topics используют взаимодействие публикации или подписки, но в сервисах используется метод запроса или ответа. Один узел будет действовать как поставщик услуг, у которого запущена подпрограмма обслуживания, а клиентский узел запрашивает услугу с сервера. Сервер выполнит процедуру обслуживания и отправит результат клиенту. Клиентский узел должен ждать, пока сервер ответит результатами.

  • Bag: Bag- полезная утилита в ROS для записи и воспроизведения тем ROS. При работе с роботами могут возникнуть ситуации, когда нам нужно работать без реального оборудования. Используя rosbag, мы можем записывать данные датчика и копировать файл bag-а на другие компьютеры для проверки данных, воспроизводя их.

Рисунок 7: принципиальная схема вычислительного графа ROS