Оглавление:

Лидарный дисплей TFMini - как радар, только со светом! :-): 3 шага
Лидарный дисплей TFMini - как радар, только со светом! :-): 3 шага

Видео: Лидарный дисплей TFMini - как радар, только со светом! :-): 3 шага

Видео: Лидарный дисплей TFMini - как радар, только со светом! :-): 3 шага
Видео: Лидар на Ардуино! DIY 2024, Декабрь
Anonim
Лидарный дисплей TFMini - как радар, только со светом!:-)
Лидарный дисплей TFMini - как радар, только со светом!:-)
Лидарный дисплей TFMini - как радар, только со светом!:-)
Лидарный дисплей TFMini - как радар, только со светом!:-)

Есть несколько вещей, которые объединились, чтобы сделать эту работу, но самая большая (и что вдохновило меня на это) - это «проект Arduino Radar Project», найденный на сайте howtomechatronics.com Деяном Неделковски (дата неизвестна).

Я работал над этим проектом несколько месяцев назад (18.10.2018) с мыслью о публикации моих результатов, но так и не дошел - сегодня мне показалось, что хороший день, чтобы наверстать упущенное по некоторым проектам, которые я хотел задокументировать.

Чтобы заставить это работать, был внесен ряд изменений в Arduino, Ультразвуковой прибор был заменен на мини-лидар TF https://www.sparkfun.com/products/14588 (этот блок является последовательным устройством, что делает его достаточно простым в использовании)

Плата PWM / Servo PCA9685 использовалась, потому что серво-библиотека вызвала проблемы при использовании последовательной библиотеки программного обеспечения.

Другим небольшим изменением было крепление, которое я использовал, что на самом деле мелочь - я использовал дешевое крепление PAN / Tilt и пару сервоприводов - Первоначальная мысль заключалась в том, чтобы расширить его еще больше и иметь опцию высоты (давая больше Я наткнулся на пару препятствий с этой идеей и больше никогда не возвращался к ней. Так что на самом деле вам действительно нужен только один сервопривод (у меня их два).

Разделы кода Arduino были основаны на Juan Jose Luna Espinosa TFMini и коде ESP32

Единственная необходимая библиотека - это библиотека драйверов сервоприводов Adafruit PWM

Шаг 1: Что нам нужно, чтобы построить это…

Что нам нужно, чтобы построить это…
Что нам нужно, чтобы построить это…
Что нам нужно, чтобы построить это…
Что нам нужно, чтобы построить это…
Что нам нужно, чтобы построить это…
Что нам нужно, чтобы построить это…

Я уже намекнул на большую часть этого…..

Нам понадобится TFMini Lidar, 2 сервопривода, крепление для панорамирования / наклона, плата PCA9685 и Arduino UNO / или клон.

Нам также понадобится дополнительный источник питания 5 В для сервоплаты. (Хорошее руководство для платы PCA9685 можно найти здесь

Проводка для этого довольно проста: от Arduino вы захотите подключить 5 В как к VCC на плате PCA9685, так и к лидарному блоку TFMINI, а также к земле к обоим. PCA9685 - это устройство I2C, поэтому SCL подключается к A5, а SDA - к контакту A4.

Из TFMini вы подключите контакт TX к PIN 8 на Arduino.

На PCA9685 вы подключите один сервопривод к заголовку 0 и один сервопривод к заголовку 1 (убедитесь, что они правильно подключены, заземляющий (коричневый) провод должен быть внизу или на внешнем краю) Заголовок 0 будет использоваться для сервопривод PAN (или тот, который мы будем использовать) - сервопривод наклона подключен к заголовку 1 (код действительно немного перемещает его, чтобы привести его в прямое положение).

Это касается аппаратного обеспечения, что касается программного обеспечения, нам нужно будет установить IDE Arduino (на момент написания этой статьи я использую 1.8.5, но последняя также должна работать), а я не протестировал или использовал онлайн-редактор (поэтому я понятия не имею, будет ли он работать с этим).

Вы захотите следовать инструкциям по установке для своей ОС, которые можно найти здесь:

Вы также захотите обновить платы и библиотеки по мере необходимости (используйте стабильные библиотеки, не используйте какие-либо бета-версии, они содержат ошибки)

Нам также необходимо установить Processing - для тех, кто не знает, что такое обработка - это гибкий блокнот для программ и язык для обучения программированию в контексте изобразительного искусства.

Другими словами, это действительно упрощает отображение и отображение информации.

processing.org/download/

Наконец, вы захотите взять код из моего репозитория на github.

github.com/kd8bxp/Lidar-Display

Шаг 2: Программное обеспечение…

Программное обеспечение…
Программное обеспечение…
Программное обеспечение…
Программное обеспечение…
Программное обеспечение…
Программное обеспечение…
Программное обеспечение…
Программное обеспечение…

В репозитории вы найдете некоторый тестовый код для Arduino, загрузите его в UNO и откройте последовательную консоль, и, если все работает правильно, вы должны начать видеть некоторые расстояния от вашего TF MINI - этот код основан на работа Хуана Хосе Луна Эспиноза (2018) TFMini и ESP32

github.com/yomboprime/TFMiniArduinoTest

Убедившись, что лидар работает, вы готовы загрузить код lidar_radar_with_processing2 в UNO.

Теперь нам нужно загрузить код обработки, нам нужно изменить последовательный порт - это строка 42.

В эскизе есть последовательный порт, который использует моя UNO, это в Linux, и если вы используете Linux, он должен быть чем-то похожим (это также может быть что-то вроде / dev / ttyUSB0) для машины Windows, это будет COM #

в любом случае это должен быть тот же последовательный порт, который использует ваша IDE Arduino. - Вы захотите закрыть последовательную консоль Arduino и запустить скетч обработки.

ЕСЛИ все идет хорошо, вы должны начать видеть дисплей «Радар».

Вы могли заметить, что мой дисплей выглядит не так, как проект, который его вдохновил -

Я внес несколько изменений в эскиз обработки - поскольку лидар TFMini может отображать от 12 дюймов до 36 футов - я изменил диапазон - мне также не понравилось, как исходный эскиз сделал КРАСНУЮ линию, поэтому я изменил это на просто точка КРАСНОГО цвета (кстати, это изменение есть в эскизе обработки в строке 115 и строке 116, если вы хотите изменить его обратно). Диапазон фактически сопоставлен со значением от 1 до 39 в скетче Arduino.

* Примечание: строка 39 позволяет вам изменять разрешение. Вам может потребоваться или не потребоваться его регулировка - если вы не видите что-то похожее на изображение выше, вам, вероятно, придется отрегулировать строку 39.

** Примечание 2: - Вы можете получить ошибку относительно последовательного порта, я забыл порядок устройств - я думаю, вы сначала запускаете Arduino, а затем запускаете эскиз обработки - Но у меня может быть это в обратном порядке - так что вы можете начать эскиз обработки, затем подключите Arduino…. Один способ дает ошибку в процессе, а другой работает.

Шаг 3. Еще картинки и спасибо за прочтение…

Еще картинки и спасибо за прочтение…
Еще картинки и спасибо за прочтение…
Еще картинки и спасибо за прочтение…
Еще картинки и спасибо за прочтение…
Еще картинки и спасибо за прочтение…
Еще картинки и спасибо за прочтение…

Я надеюсь, что я отдал должное оригинальному проекту, и я надеюсь, что вам понравилось то, что я с ним сделал.

* Мне кажется, что я не очень хорошо это объяснил … Может, мне стоит задокументировать свои проекты раньше, чем через 3 месяца *