Я новичок в создании роботов и только что получил свой первый Arduino, чтобы поиграть.
Я хочу сделать робота, который будет бродить по столу, и это будет длиться дольше, я думаю, если бы я мог сделать так, чтобы избежать падения со стола.
Каков будет лучший способ заставить его обнаружить край стола, чтобы я мог остановить его и развернуться? Это должно быть что-то надежное и желательно дешевое.
Также было бы лучше, если бы мне не нужно было добавлять дополнительные элементы в таблицу, чтобы я мог использовать их на любой поверхности (моя первая идея состояла в том, чтобы рисовать линии пути на столе и создать робота для следования за линиями, но я этого не делаю мне очень нравится эта идея).
Существует несколько разных подходов к решению этой проблемы:
С помощью датчика расстояния вам необходимо проверить, является ли это цифровой или аналоговый сигнал, предоставляемый датчиком. Для вашего «датчика обрыва» вам, вероятно, будет хорошо с цифровым, так как вы сможете использовать датчик в качестве переключателя для обнаружения, когда расстояние превышает минимальное расстояние.
Если вы заинтересованы в аналоговых датчиках, чтобы предоставить больше информации (например, расстояние от стены), чем просто тумблер, вам необходимо проверить, какой диапазон на устройстве. Острый датчик, изображенный в ответе выше, предоставит вам напряжение, которое вам придется преобразовать в расстояние (оно имеет обратную зависимость от расстояния). Вам потребуется 3 датчика для покрытия того же диапазона расстояний, что и ультразвуковой датчик (например, ультразвуковой дальномер SRF08). Датчик измерения расстояния Sharp GP2D120 4-30 см для короткой дистанции, датчик измерения расстояния Sharp GP2Y0A02YK 20-150 см для средней дальности и датчик измерения расстояния Sharp GP2Y0A710K0F 100-550 см для датчика дальнего радиуса действия. У меня были проблемы с ультразвуковым датчиком, спадающим до нуля, поэтому вам необходимо запрограммировать оператор catch, если это исключение недопустимо в вашем приложении. С ультразвуковым дальномером SRF08 работать было намного проще, так как он был настроен производителем.
источник