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

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

Рисунок 7: принципиальная схема вычислительного графа 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-а на другие компьютеры для проверки данных, воспроизводя их.

Last updated

Was this helpful?