Оглавление:

Benewake LiDAR TFmini (Полное руководство): 5 шагов (с изображениями)
Benewake LiDAR TFmini (Полное руководство): 5 шагов (с изображениями)

Видео: Benewake LiDAR TFmini (Полное руководство): 5 шагов (с изображениями)

Видео: Benewake LiDAR TFmini (Полное руководство): 5 шагов (с изображениями)
Видео: Лазерный сканер HP-L 8.9 для 6-осевых координатно-измерительных рук Hexagon 2024, Июль
Anonim
Benewake LiDAR TFmini (Полное руководство)
Benewake LiDAR TFmini (Полное руководство)
Benewake LiDAR TFmini (Полное руководство)
Benewake LiDAR TFmini (Полное руководство)

Описание

Модуль Benewake TFMINI Micro LIDAR имеет уникальный оптический, структурный и электронный дизайн. Продукт обладает тремя основными преимуществами: низкой стоимостью, небольшим объемом и низким энергопотреблением.

Встроенный алгоритм, адаптированный к внутренним и внешним условиям, может гарантировать отличную производительность при низкой стоимости и в небольшом объеме, что значительно расширяет области применения и сценарии LiDAR и закладывает прочную основу для будущих «глаз» в умных эпоха.

Характеристики

  • Входное напряжение: 5 В
  • Средняя мощность: 0,12 Вт
  • Протокол связи: UART (скорость передачи: 115200)
  • Рабочая температура: -20 ℃ ~ 60 ℃
  • Угол обзора: 2.3 °

Габаритные размеры

  • Размер: 42 мм x 15 мм x 16 мм
  • Вес: 6,1 г

Ограничения

0-30см «слепой» диапазон

Где купить

  • RobotShop
  • Амазонка

Это руководство требует, чтобы вы были знакомы со следующим:

  • Базовая электроника
  • Ручные инструменты, такие как кусачки и стриптизерши
  • Чтение схем и схем подключения
  • Программирование на C / C ++ для Arduino (необязательно)
  • Программирование на Python для Raspberry Pi (необязательно)

Шаг 1: сбор материала

Сбор материала
Сбор материала
Сбор материала
Сбор материала
Сбор материала
Сбор материала

Это руководство проведет вас через различные способы развертывания TFmini LiDAR с помощью ПК с Windows и Raspberry Pi. Каждый метод имеет свои требования и может варьироваться в зависимости от ваших потребностей.

** Вам понадобится Benewake TFmini LiDAR для каждого случая (конечно) **

Для реализации на базе ПК:

  • ОС: Windows
  • Конвертер USB-TTL
  • Провода перемычки

Для реализации на основе Raspberry Pi:

  • Raspberry Pi
  • Провода перемычки
  • Светодиоды (опционально)
  • Конвертер USB-TTL (опционально)
  • Макетная плата (необязательно)
  • Резистор (от 100 до 1 кОм) (опционально)

Шаг 2. Реализация на базе ПК с использованием приложения Benewake

Реализация на базе ПК с использованием приложения Benewake
Реализация на базе ПК с использованием приложения Benewake
Реализация на базе ПК с использованием приложения Benewake
Реализация на базе ПК с использованием приложения Benewake
  1. Подключите TFmini LiDAR к конвертеру USB-TTL с помощью перемычек (вилка-розетка) в соответствии с показанной схемой.

    • Красный провод 5В
    • Черный провод GND
    • Белый / синий провод Tx
    • Зеленый провод Rx
  2. Подключите USB-TTL к компьютеру
  3. Перейдите в диспетчер устройств (Win + X) и найдите «Prolific USB-to-Serial Comm Port» в разделе «Порты (COM и LPT)». Убедитесь, что Windows распознает устройство
  4. Загрузите и распакуйте WINCC_TF.rar
  5. Запустите WINCC_TFMini.exe из извлеченных файлов
  6. Выберите соответствующий COM-порт из раскрывающегося меню в приложении Benewake под заголовком Последовательный порт.
  7. Нажмите ПОДКЛЮЧИТЬСЯ.

Шаг 3. Реализация на базе ПК с использованием Python (PySerial)

Реализация на базе ПК с использованием Python (PySerial)
Реализация на базе ПК с использованием Python (PySerial)
  1. Подключите TFmini LiDAR к ПК с помощью конвертера USB-TTL
  2. Загрузите и откройте PC_Benewake_TFmini_LiDAR.py с помощью Python IDLE (убедитесь, что на вашем компьютере установлены PySerial и Python)
  3. Отредактируйте COM-порт в коде, чтобы он соответствовал COM-порту конвертера USB-TTL на вашем ПК (см. Изображение)
  4. Перейдите на вкладку "Выполнить".
  5. Нажмите "Запустить модуль".

** Обратитесь к Шагу 5 для объяснения кода.

Шаг 4: Реализация на основе Raspberry Pi

Реализация на основе Raspberry Pi
Реализация на основе Raspberry Pi
Реализация на основе Raspberry Pi
Реализация на основе Raspberry Pi
Реализация на основе Raspberry Pi
Реализация на основе Raspberry Pi
Реализация на основе Raspberry Pi
Реализация на основе Raspberry Pi
  1. Подключите TFmini LiDAR к RPi с помощью преобразователя USB-TTL или порта UART с помощью GPIO
  2. Загрузите и откройте Pi_benewake_LiDAR.py с помощью Python IDLE
  3. Если вы используете преобразователь USB-TTL с RPi, откройте Arduino IDE. Щелкните Инструменты -> Последовательный порт и отредактируйте код соответствующим образом. Если вы используете порт UART GPIO, напишите / dev / ttyAMA0
  4. Запустите код

** Код может использоваться для печати расстояния, но поскольку RPi не обладает большой вычислительной мощностью, рекомендуется зажечь светодиод, если записанное расстояние ниже определенного диапазона (схема для светодиода с RPi прилагается)

В. Зачем использовать конвертер USB-TTL с RPi?

RPi имеет только один порт UART, и иногда вам нужно установить несколько модулей, требующих связи UART. USB-TTL предоставляет дополнительный порт UART для RPi, что дает нам возможность подключать более одного устройства UART (например, два или более TFmini LiDAR) к RPi.

Шаг 5: О коде

О Кодексе
О Кодексе

Код можно разделить на три части:

  • Установление соединения
  • Запись данных
  • Чтение данных

Установление соединения:

После импорта необходимых файлов заголовков мы устанавливаем соединение с нашим TFmini LiDAR, указав его COM-порт, скорость передачи и время ожидания соединения.

ser = serial. Serial ('COM7', 115200, тайм-аут = 1) #PC

ser = serial. Serial ('/ dev / ttyUSB1', 115200, timeout = 1) #Raspberry Pi

Запись данных:

Код можно разделить на две части: написание и получение. Для получения данных вам необходимо отправить определенную команду в TFmini LiDAR (часть процесса инициализации). В данном случае я выбрал 4257020000000106. Хотя RPi работает с той же версией Python, но есть небольшое изменение в синтаксисе, поскольку RPi не принимает данные, кроме двоичных.

ser.write (0x42)

ser.write (0x57) ser.write (0x02) ser.write (0x00) ser.write (0x00) ser.write (0x00) ser.write (0x01) сер.write (0x06)

Чтение данных:

Таблица, представленная в листе данных, дает нам «разбивку» 9-байтового сообщения UART. Первые два байта - это заголовок кадра, имеющий шестнадцатеричное значение 0x59 (символ «Y»). Их можно прочитать и использовать для идентификации начала сообщения UART.

if (('Y' == ser.read ()) и ('Y' == ser.read ())):

Как только фрейм заголовка прочитан, могут быть прочитаны следующие два байта, содержащие данные о расстоянии. Данные о расстоянии делятся на два 8-битных пакета: Dist_L (Byte3) - младшие 8 бит и Dist_H (Byte4) - старшие 8 бит.

Dist_L = ser.read () # Byte3Dist_H = ser.read () # Byte4

При умножении Dist_H на 256 двоичные данные сдвигаются на 8 влево (эквивалент «<< 8»). Теперь можно просто добавить более низкие 8-битные данные о расстоянии, Dist_L, что приведет к 16-битным данным Dist_Total.

Dist_Total = (ord (Dist_H) * 256) + (ord (Dist_L))

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

для i в диапазоне (0, 5): ser.read ()

** В другом месте вы можете найти «задержку» (time.sleep в Python) перед концом цикла по той причине, что TFmini LiDAR имеет рабочую частоту 100 Гц. Эта задержка «программная задержка» приведет к ОБНОВЛЕНИЮ данных после некоторой задержки. Я считаю, что, поскольку мы уже ждем, когда данные накопятся до 9 байт, другой задержки быть не должно.

# time.sleep (0.0005) # Задержка закомментирована

пока (ser.in_waiting> = 9):

Рекомендуемые: