Оглавление:
Видео: Могу ли я использовать TinyLiDAR в царапинах?: 3 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Время от времени мы получаем запросы, чтобы узнать, будет ли tinyLiDAR работать на их конкретной вычислительной платформе. Хотя tinyLiDAR был разработан как простой в использовании датчик LiDAR для Arduino UNO, ничто не мешает использовать его на других платформах, таких как Raspberry Pi (как показано в предыдущем руководстве). То есть, если платформа имеет шину I2C и может поддерживать функцию растяжения тактовой частоты спецификации I2C. Итак - что, если ваша плата даже не поддерживает I2C? - не говоря уже о том, что часы растягивают вещи … Что ж, это был бы сложный сценарий, но на самом деле он действительно существует для сверхпопулярного языка визуального программирования под названием "Scratch".
Погуглите, если вы не слышали о нем раньше, но в двух словах, это отличный первый язык для всех, кто хочет погрузиться в сферу программирования. Scratch был создан MIT Media Lab и существует уже более 16 лет. Это язык goto для обучения детей программированию по всему миру. Любой желающий может начать использовать его бесплатно - как обычно, он работает на вашем рабочем столе в веб-браузере. Посмотрите здесь, если хотите.
TL; версия DR
ДА! С новой функцией под названием «Режим ультразвуковой эмуляции» в tinyLiDAR f / w версии 1.3.9
Шаг 1. Что нацарапать?
Сейчас в дикой природе есть много вкусов Scratch. Энтузиасты робототехники склонны использовать версии, ориентированные на GPIO, такие как ScratchGPIO, или другие модифицированные версии, такие как ScratchX, которые могут быть созданы для поддержки любого «экспериментального оборудования». Все это отлично подходит для продвинутых пользователей, но основные версии, которые по умолчанию установлены на Pi, будут в центре нашего внимания для этого руководства, поскольку они имеют довольно ограниченные параметры оборудования.
Raspbian Stretch Desktop от Pi поставляется с двумя предустановленными версиями Scratch. А именно «Царапина» и «Царапина 2». Мы будем использовать первый, известный как «Scratch 1.4 (NuScratch)», и будем использовать его «в автономном режиме», чтобы мы могли использовать функцию сервера GPIO.
Вы можете скачать официальный образ рабочего стола Pi здесь.
По какой-то причине создатели Scratch решили поддерживать только несколько наиболее распространенных датчиков от крупных компаний, таких как Lego и т. Д. Интересно, однако, что они также решили добавить поддержку HC-SR04. Это, конечно же, повсеместный ультразвуковой датчик расстояния, который просто выдает одиночный импульс, пропорциональный измеренному расстоянию.
Точность измерения может немного отличаться в зависимости от температуры воздуха, влажности и материала объекта, как указано здесь, здесь и здесь. Но в целом практически любая платформа может измерять ширину выходного импульса этого устройства.
Шаг 2: Новая функция
Вывод точных импульсов микросекундного масштаба не является проблемой для нас на tinyLiDAR, поскольку у нас есть запасные аппаратные таймеры с высоким разрешением внутри встроенного 32-битного микроконтроллера. tinyLiDAR также всегда выполняет автоматическую калибровку температуры при включении, поэтому никаких дополнительных настроек для условий эксплуатации не требуется.
Давай сделаем это
Хорошо - мы могли, поэтому мы просто добавили новую функцию в tinyLiDAR (начиная с прошивки 1.3.9) под названием «Режим ультразвуковой эмуляции». Вы можете получить к нему доступ, используя команду «u» в обновленном терминале с графическим интерфейсом tinyLiDAR.
Его использование изменит настройки в энергонезависимой памяти, так что tinyLiDAR будет выглядеть как обычный ультразвуковой датчик даже после того, как вы отключите его. Вы можете вернуть его в нормальный режим I2C, нажав кнопку сброса и введя команду «az». Более подробная информация находится в руководстве пользователя.
Чтобы сделать жизнь еще проще, мы делаем датчик tinyLiDAR доступным для этого нового режима ультразвуковой эмуляции с нашего веб-сайта. Просто закажите версию "-u".
Смотри, мама, без пайки
Не требуется пайка и макетная плата, так как прилагаемые кабели «Grove to Female 4pin» подключаются непосредственно к контактам заголовка Raspberry pi. Штифт триггера - это желтый провод, а контакт эха - белый провод. Черный и красный, конечно, для власти. Подробности см. На главном изображении выше.
Кстати, мы пошли еще дальше и заставили желтый контакт вести себя как датчик PING))), который использует один провод для сигналов запуска и эха.
Из-за этого теперь вы можете проводить измерения с помощью tinyLiDAR, используя ультразвуковой эскиз «PING» по умолчанию, который поставляется с каждой IDE Arduino, без каких-либо изменений кода! Вы также можете попробовать это без промедления.
Конечно, вы можете установить такие параметры, как высокая точность, большое расстояние и т. Д. Ваших измерений LiDAR, прежде чем выбирать команду «u», и затем он будет выполнять эти измерения каждый раз, когда видит, что спусковой штифт опускается, как показано на диаграмме выше.
Опасно, Уилл Робинсон
Обратите внимание, что ультразвуковому датчику SR04 нужны резисторы, чтобы питание +5 В не повредило ваш пи. Но поскольку tinyLiDAR изначально работает от + 3,3 В, нет необходимости в каких-либо резисторах для взаимодействия с пи:)
Шаг 3. Кодирование
Итак, какой именно код нам нужен для работы tinyLiDAR в Scratch?
Рад, что ты спросил!
Просто перетащите несколько простых блоков вещания, как показано на рисунках выше.
Чтобы включить выводы GPIO, мы можем выполнить команду «broadcast gpioserveron». Затем, чтобы настроить вывод запуска, мы запускаем «broadcast config16out». Затем мы можем настроить вывод эха с помощью «broadcast config26in», а затем начать измерения с помощью «broadcast ultrasonictrigger16echo26». Это приведет к тому, что измерения будут выполняться непрерывно с частотой около 140 мсек. Вы можете прочитать измеренные данные, используя блок считывания «Значение ультразвукового датчика расстояния».
Что ж, на этом все, спасибо за чтение и обязательно ознакомьтесь с забавной небольшой демонстрационной программой Scratch (размещенной здесь), которую мы сделали, под названием «tinyLiDAR_catch_me» и… Scratch On!;)
Рекомендуемые:
Как настроить Raspberry Pi и начать его использовать: 4 шага
Как настроить Raspberry Pi и начать его использовать: для читателей будущего мы находимся в 2020 году. В год, когда, если вам повезло быть здоровым и не заразиться Covid-19, вы внезапно , у меня намного больше свободного времени, чем вы могли себе представить. Так как же мне занять себя не слишком глупо? О, да
Как использовать фриттинг для изготовления печатной платы: 3 шага
Как использовать Fritzing для создания печатной платы: в этой инструкции я покажу вам, как использовать Fritzing. В этом примере я собираюсь сделать щит питания для Arduino, который можно использовать для подачи питания на Arduino с помощью батареи
Как использовать терминал Mac и как использовать ключевые функции: 4 шага
Как использовать терминал Mac и как использовать основные функции: мы покажем вам, как открыть терминал MAC. Мы также покажем вам несколько функций Терминала, такие как ifconfig, изменение каталогов, доступ к файлам и arp. Ifconfig позволит вам проверить ваш IP-адрес и ваш MAC-адрес
Не могу поверить, что это еще один блок питания USB!: 6 шагов
Я не могу поверить, что это еще один USB-источник питания !: Это было вдохновлено некоторыми (читай: множеством) руководств о "Как заряжать * от USB-питания", поэтому я изменил логику и публикую " Как подключить зарядное устройство * к USB-портам ". В качестве" дополнительного бонуса "вы можете использовать 2
Все остальные делают подставку для ноутбука, так почему я не могу ?: 8 шагов (с изображениями)
Все остальные делают подставку для ноутбука, так почему я не могу ?: Или как я превратил лоток в подставку для ноутбука. У нас нет телевизора, но мы любим лежать на одеяле и смотреть DVD на ноутбуке. Эта подставка для ноутбука обеспечит хорошую стабильность и воздушный поток