roboforum.ru

Технический форум по робототехнике.

Датчики для ног

Датчики для ног

vold_by » 08 июн 2007, 16:54

Работаю над роботом-пауком типа HEXAPOD (http://www.lynxmotion.com/images/jpg/ah3r02.jpg).
Сейчас работаю над описанием общей архитектуры робота. В основном это касается датчиков и структуры управления ногами.
Купил у америкосов комплект деталей для двух ног и одну собрал с сервами Hitec 475HB. Остальные буду делать сам (сниму размеры с оригинала, отдам на лазерную резку развертки и т.д.).
Нога прикольно дергается на столе при активации одной из серв (у меня пока для тестов только генератор ШИМ аналоговый спаян), но вопрос не в этом...

По каким критериям определять, что робот поставил ногу? Может кто-то сталкивался с такой задачей?
Есть пару идей:

1. Меряем токи в двух суставных сервах, которые вращаются в вертикальной плоскости. Критерий поставленной ноги: достаточно высокие (~500 мА) токи в обоих сервах в течение определенного времени. Проблема в том, что ток там явно будет пульсирующий... Кроме того он может быть высоким и при свободном повороте серв (чтобы померять, нужно уже ногу заставить шагать и сохранять лог токов, а у меня пока схема не готова).

2. Датчик расстояния (ИК), направленный вдоль последней фаланги, которая и ставится на поверхность. Здесь проблема в том, что при попадании препядствия между датчиком и поверхностью, нарушается схема измерения, а на конец фаланги датчик не поставишь, потому что будет загрязняться.

3. Объединяем пункты 1 и 2.

4. ???

Vooon » 08 июн 2007, 17:24

можно поставить простой контактный датчик(ака кнопка) на "подошву" ноги
и прикрыть его чехлом от загрязнения. (люблю простые решения :) )

vold_by » 08 июн 2007, 18:02

Vooon, спасибо за идею, нужно только микрики подобрать с нужным усилием. Буду пробовать комбинировать с п.2 для надежности.

Сергей » 08 июн 2007, 21:28

С микриками нужно еще повозиться, когда сам испытывал платформу такую, микрик не при всех положениях ноги срабатывал, нужно подбирать либо пару микриков либо "форму" кнопки под саму ступню.

vold_by » 10 июн 2007, 17:18

Сергей, я вот об этом и думал. Если посмотришь на ногу (http://www.lynxmotion.com/images/Products/Full/3dofabru.jpg), то увидишь, что она заканчивается резиновой накладкой на трубку. Наружный диаметр колпачка примерно 15 мм. Думаю, что 3 микрика в эту трубку можно засунуть под разными углами, и хоть один нажмется :)

Сергей » 10 июн 2007, 17:27

Три штуки будет многовато для начала. Ты прикинь сколько вариантов нужно проработать для кажого положения ноги. Два хватит за глаза.

Myp » 10 июн 2007, 18:01

а почему многовато
все 3 штуки паралельно
тогда всё равно, сработали все 3 или только один.

Сергей » 10 июн 2007, 18:06

Да это правильно. А я имел ввиду что иногда нужно знать на какое препятствие наткнулась нога и будет важно от какого из 3-х датчиков поступил сигнал, от этого будет зависеть дальнейшее действие. По крайней мере я так у себя реализую. Когда у каждой ноги по три датчика и ног четыре(ну как у меня) геморойно будет. а если ног шесть и по три датчика..) тут без нейросетей не обойтись

vold_by » 11 июн 2007, 13:33

Сергей, я пока не заморачиваюсь ситуациями "нога на что-то наткнулась", хотя, инфракрасные датчики помогли бы не падать со стола, например, но это позже. Количество датчиков меня не сильно заботит, потому что в архитектуре будет применен объектно-ориентированный подход: отдельный контроллер на каждую ногу (знает как делать шаги и слушать датчики ног) + центральный ARM9 (держит связь с контроллерами ног по i2c и принимает главные решения, и еще будет анализировать данные с разных датчиков зрения).
Сейчас я пока хочу просто научить его ставить ногу и знать, что он ее поставил.

В будущем прикручу зрение (ARM потянет даже камеру без проблем). Скорее всего для начала инфракрасные, чтобы отслеживать относительно крупные препядствия, а там посмотрим по мере необходимости.

А вот, например, задача: нарянута нить и нога натыкается на нее и не может закончить перенос ноги. Чем мерять?

Сергей » 11 июн 2007, 14:28

Есть много вариантов, к примеру - временем. Робот знает через какой промежуток нога должна встать на позицию. Если через это время + коэффициент какойнибудь нога не встает или допустим касается земли раньше, то можно предположить что это препятствие. Поэтому можно просто его перешагнуть, сначала исследовав можно ли это сделать.


cron
Rambler\'s Top100 Mail.ru counter