exponenta event banner

LaserScan

Создать сообщение лазерного сканирования

Описание

LaserScan объект является реализацией sensor_msgs/LaserScan вид сообщения в ROS. Объект содержит метаинформацию о сообщении и данные лазерного сканирования. Можно извлечь диапазоны и углы с помощью Ranges собственность и readScanAngles функция. Для доступа к точкам в декартовых координатах используйте readCartesian.

Можно также преобразовать этот объект в lidarScan (Navigation Toolbox) объект для использования с другими алгоритмами робототехники, такими как matchScans(Панель инструментов навигации), controllerVFH(Панель инструментов навигации), или monteCarloLocalization(Панель инструментов навигации).

Создание

Описание

пример

scan = rosmessage('sensor_msgs/LaserScan') создает пустой LaserScan объект. Можно указать сведения о сканировании и данные с помощью свойств или получить эти сообщения из сети ROS с помощью rossubscriber.

Свойства

развернуть все

Это свойство доступно только для чтения.

Тип сообщения ROS, возвращаемый в виде символьного вектора.

Типы данных: char

Это свойство доступно только для чтения.

Сообщение заголовка ROS, возвращенное как Header объект. Это сообщение заголовка содержит MessageType, последовательность (Seq), отметка времени (Stamp), и FrameId. Временная метка относится к времени захвата первого луча в сканировании.

Минимальный угол данных диапазона, заданный как скаляр в радианах. Положительные углы измеряются от направления вперед робота.

Максимальный угол данных диапазона, заданный как скаляр в радианах. Положительные углы измеряются от направления вперед робота.

Приращение угла данных диапазона, заданное как скаляр в радианах.

Время между отдельными точками данных диапазона в секундах, указанное как скаляр.

Время завершения полного сканирования в секундах, указанное как скаляр.

Минимальное допустимое значение диапазона, указанное как скаляр.

Максимальное допустимое значение диапазона, указанное как скаляр.

Показания диапазона от лазерного сканирования, заданные как вектор. Чтобы получить соответствующие углы, используйте readScanAngles.

Значения интенсивности из показаний диапазона, заданные как вектор. Если допустимые значения интенсивности не найдены, это свойство пусто.

Функции объекта

lidarScan(Панель инструментов навигации)Создайте объект для хранения 2-го просмотра лидара
plotОтображение сканирования лидара или облака точек из структур сообщений АФК
readCartesianСчитывание диапазонов лазерного сканирования в декартовых координатах
readScanAnglesОбратные углы сканирования для показаний диапазона лазерного сканирования

Примеры

свернуть все

Загрузите, проверьте и выведите на экран сообщение о сканировании образца лазера.

Создайте образцы сообщений и проверьте данные сообщения лазерного сканирования. scan объект является образцом ROS LaserScan объект сообщения.

exampleHelperROSLoadMessages
scan
scan = 
  ROS LaserScan message with properties:

       MessageType: 'sensor_msgs/LaserScan'
            Header: [1x1 Header]
          AngleMin: -0.5467
          AngleMax: 0.5467
    AngleIncrement: 0.0017
     TimeIncrement: 0
          ScanTime: 0.0330
          RangeMin: 0.4500
          RangeMax: 10
            Ranges: [640x1 single]
       Intensities: [0x1 single]

  Use showdetails to show the contents of the message

Получение диапазонов и углов из свойств объекта. Убедитесь, что диапазоны и углы одинаковы.

ranges = scan.Ranges;
angles = scan.readScanAngles;
size(ranges)
ans = 1×2

   640     1

size(angles)
ans = 1×2

   640     1

plot(scan)

Figure contains an axes. The axes with title Laser Scan contains an object of type line.

scan = rosmessage('sensor_msgs/LaserScan')
scan = 
  ROS LaserScan message with properties:

       MessageType: 'sensor_msgs/LaserScan'
            Header: [1x1 Header]
          AngleMin: 0
          AngleMax: 0
    AngleIncrement: 0
     TimeIncrement: 0
          ScanTime: 0
          RangeMin: 0
          RangeMax: 0
            Ranges: [0x1 single]
       Intensities: [0x1 single]

  Use showdetails to show the contents of the message

См. также

| | | | | | (инструментарий робототехнической системы)

Представлен в R2019b