Подготовка сети ROS включает связь между различными устройствами. Эти участники, или узлы, весь регистр с ведущим устройством ROS, чтобы поделиться информацией. Каждая сеть ROS имеет только один, уникальное ведущее устройство. Каждый узел обычно является отдельным устройством, несмотря на то, что одно устройство может иметь несколько выполнений узлов. MATLAB® действия как один из этих узлов при передаче в существующей Сети ROS.
Все устройства должны быть соединены к той же фактической или виртуальной сети для связей ROS, чтобы работать. Можно создать новое ведущее устройство ROS в MATLAB, или можно соединиться с существующим ведущим устройством ROS, которое работает на различном устройстве. Если вы соединяетесь с внешним ведущим устройством, необходимо знать IP-адрес или имя узла устройства. Начальная ведущая связь ROS создается путем вызова rosinit
. Для получения дополнительной информации о подготовке и использовании сети ROS, смотрите Сетевое подключение и Исследование.
Узлы связываются путем отправки названным издателям сущностей использования сообщений, подписчикам и сервисам. Издатели отправляют данные с помощью названий темы, которые подписчики затем получают по сети. Сервисы используют клиенты, чтобы запросить информацию у сервера. Для получения дополнительной информации об отправке сообщений смотрите Издателей и Подписчиков.
Сеть ROS является набором узлов, которые все соединяются с ведущим устройством ROS. Количество узлов может быть довольно большим в зависимости от вашего приложения и устройств. Узлы, которые указаны с ведущим устройством, могут связаться со всеми другими зарегистрированными узлами. Каждый узел указывает различных издателей, подписчиков и сервисы на ведущее устройство ROS отправить и получить информацию между узлами. Даже при том, что все узлы в сети ROS указаны с ведущим устройством, данные переданы непосредственно между узлами. Следующий рисунок показывает размещение сети ROS с двумя узлами ROS. Все узлы должны иметь двунаправленную возможность соединения, чтобы осуществлять обмен данными по сети. Проверка этих связей важна во время настройки.
Каждый узел указывает свой собственный URI Узла с ведущим устройством. Другие участники сети ROS будут использовать этот URI, чтобы связаться с узлом. Снова, этот URI должен быть достижимым любым узлом в сети ROS. Чтобы создать узел в MATLAB, вызвать rosinit
. Если ведущее устройство ROS уже настраивается, MATLAB обнаруживает его и устанавливает URI Узла соответственно. В противном случае это создает и ведущее устройство ROS и узел, которые соединяются.
По умолчанию каждый экземпляр MATLAB имеет один узел global. Узел имеет случайным образом сгенерированное имя, присвоенное ему для уникальности. Все издатели, подписчики, сервисные клиенты и сервисные серверы работают с этим глобальным узлом.