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

Раздел создан специально для людей которым интересна робототехника, но в силу разных причин они не знают с чего начать.
Задавайте ваши вопросы, какими бы простыми они не казались, постоянные посетители форума постараются ответить на них по мере своих сил.
Робот своими руками. Самодельный робот.

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

Сообщение vold_by » 08 июн 2007, 16:54

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

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

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

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

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

4. ???
vold_by
 
Сообщения: 4
Зарегистрирован: 08 июн 2007, 16:16
Откуда: Минск

Сообщение Vooon » 08 июн 2007, 17:24

можно поставить простой контактный датчик(ака кнопка) на "подошву" ноги
и прикрыть его чехлом от загрязнения. (люблю простые решения :) )
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Сообщение vold_by » 08 июн 2007, 18:02

Vooon, спасибо за идею, нужно только микрики подобрать с нужным усилием. Буду пробовать комбинировать с п.2 для надежности.
vold_by
 
Сообщения: 4
Зарегистрирован: 08 июн 2007, 16:16
Откуда: Минск

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

С микриками нужно еще повозиться, когда сам испытывал платформу такую, микрик не при всех положениях ноги срабатывал, нужно подбирать либо пару микриков либо "форму" кнопки под саму ступню.
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Сообщение vold_by » 10 июн 2007, 17:18

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

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

Три штуки будет многовато для начала. Ты прикинь сколько вариантов нужно проработать для кажого положения ноги. Два хватит за глаза.
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Сообщение Myp » 10 июн 2007, 18:01

а почему многовато
все 3 штуки паралельно
тогда всё равно, сработали все 3 или только один.
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

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

Да это правильно. А я имел ввиду что иногда нужно знать на какое препятствие наткнулась нога и будет важно от какого из 3-х датчиков поступил сигнал, от этого будет зависеть дальнейшее действие. По крайней мере я так у себя реализую. Когда у каждой ноги по три датчика и ног четыре(ну как у меня) геморойно будет. а если ног шесть и по три датчика..) тут без нейросетей не обойтись
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

Сообщение vold_by » 11 июн 2007, 13:33

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

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

А вот, например, задача: нарянута нить и нога натыкается на нее и не может закончить перенос ноги. Чем мерять?
vold_by
 
Сообщения: 4
Зарегистрирован: 08 июн 2007, 16:16
Откуда: Минск

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

Есть много вариантов, к примеру - временем. Робот знает через какой промежуток нога должна встать на позицию. Если через это время + коэффициент какойнибудь нога не встает или допустим касается земли раньше, то можно предположить что это препятствие. Поэтому можно просто его перешагнуть, сначала исследовав можно ли это сделать.
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей


Вернуться в Новичкам или основы основ роботостроения.

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 29