Официальный сайт компании Arduino по адресу arduino.cc
Лидар Piccolo
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Чт, 28/02/2019 - 22:09
Доброго времени суток! Попал мне в руки робот пылесос Neato XV с дохлым процессором. У него на борту стоит лидар Piccolo Laser Distance Scanner. Поискав в источниках как сия штука работает, внятного ответа не нашел. По факту он потключается по UART и передаёёт растояние слудущем образом(что удалось найти в интернете) начало идёт с заголовка (4 байта) 0xC0 0x00 0xA5 0x5A, далее следует скорость вращения, ещё 2 байта 0xD1 0xAA, далее идут ещё 4(*360 градусов) байта с растоянием (2 первых роастояние 2 вторых это состояние (слишком близко или далеко). Вопрос как дешифровать это дело в привычный для человека вид? (скорость вращения, и 360 чисел растояния).
Привычный - это как? Как в матрице штобы - зеленые числа бегущие по экрану вниз?
собственно - скорость вращения ( в десятичном виде) и собственно масссив с растояниями
Я бы начал с этого https://github.com/bombilee/NXV11/tree/master/ArduinoMegaAdapter , однако свой Neato разбирать не буду - он хоть и побитый, но бодрый.
К сажалению так и не работает, много инфы нашел по нему, но походу у меня более свежая версия лидара
Данные-то из UART летят или нет?
Да летят конечно, только как я понял всё подряд летит, и такое ощущение что по ссылке выше скреч не стабилизирует обороты двигателя лидара, скреее он не понимает оборотов
Если летят, то значит декодировать можно. Задача не сильно сложная, думаю. В схожих ситуациях декодеры я писал... С PMS-A003, например, - он тоже валит отчёты сам, не спрашивая.
Если летят, то значит декодировать можно. Задача не сильно сложная, думаю. В схожих ситуациях декодеры я писал... С PMS-A003, например, - он тоже валит отчёты сам, не спрашивая.
Прочитал Вашу статью, думаю пойду по такому-же принцепу, а пока разбираюсь с остальными датчиками и приводом двигателей