Подготовка сети ROS допускает связь между различными устройствами. Различные участники или узлы весь регистр с ведущим устройством 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 имеет один “глобальный” узел. Узел имеет случайным образом сгенерированное имя, присвоенное ему для уникальности. Все издатели, подписчики, сервисные клиенты и сервисные серверы будут работать с этим глобальным узлом.