воскресенье, 7 марта 2010 г.

Развлекаюсь пока

Пока наш хостер разбирается с серваками я страдаю фигней. Немного отдохнул как от паяльника, так и от творческого напряга. Потупил, в общем. Но все же решил чутка побаловаться. Дело в том, что мне пришли тут оптические дальномеры SHARP GP2D12 и я решил посмотреть что это за зверь.

Для экспериментов собрал простенькую установку. Сервомашинка, на ней этот дальномер, а все управление и съем показаний осуществляет Pinboard. Данные пока тупо льются в комп по терминалке и сохраняется в виде csv файла. Который потом обрабатывается обычным экселем. Вот так все дубово и топорно. Ну чо делать, не силен я в программировании под комп. Зато работает :)

Полигон выглядел так:


Результат пары прогонов, после линеаризации показаний, дал следующую картину:

Т.е. наш ИК локатор вполне верно обрисовал текущую местность. Черные квадраты это, как я прикинул, мои коробки, а показания ИК локатора подобны тени, как если бы он светил. Что за выпучка на графике я так и не понял, может блик какой левый попал? Т.к. там бликануть было от чего.

Сейчас же я собрал более продвинутый агрегат. Навесив на него еще и УЗ сонар от Maxbotix. Получился гибрид.

Сонар хорошо схватит по дальней дистанции, а ИК по ближней. На средней же будут показания с обоих датчиков. Вот завтра, наверное, вытащу все это дело уже в комнату и протестю по полной. И тогда уже будет основная статья, с примерами кода, графиками ,диаграммами, сканами местности и прочие радости.

Пока по плану следующие тесты:

1. Снятие характеристики ИК и УЗ дальномеров. На обьектах разного размера, и разных поверхностях.
2. Круговое сканирование разных местностей.
3. Работа с зонами пограничной видимости. Т.е. когда обьект попадает в область "бокового" зрения сонара или ИК дальномера
4. ... (а что еще добавить? Есть у кого мысли? )

48 комментариев:

  1. Здравствуйте, DI HALT!

    У меня вопрос может быть глупый, но правильно ли я понимаю, что та черная круглая хреновина на последней картинке - это и есть УЗ сонар? Если так, то почему он расположен не на одной оси с ИК дальномером? Нормально ли сшиваются показания обоих датчиков на той дистанции, которую видят оба?

    Какое разрешение обоих дальномеров? Если передвинуть коробку на 1 см ближе или дальше, почувствуют они это?

    Не будет ли дифракции света на ультразвуке? (хотя, это я скорее всего гоню)
    с уважением, nanyac

    ОтветитьУдалить
  2. Да у них ширина луча такая, что на одной они оси или в 5 см друг от друга это большой разницы не играет.

    Пока я оба датчика не сравнивал. Но у сонара несколько отличаются характеристики. ИК датчик дальность имеет около метра, сонар до 6 метров.

    Разрешение в 1см можно засечь ИК сонаром, судя по ровному срезу графика по коробке довольно четко идет (надо еще учесть тут шумы АЦП, т.к. я неправильно ее настроил и опорное напряжение было 5 вольт, а локатор выдает не больше чем 3.3 вольта.

    Гонишь, причем по черному :)

    ОтветитьУдалить
  3. добавь еще какую нибудь пушку(от людей/животных) ну или лазер от двд-писалки впендюрь от тараканов/комаров(+наведение, все дела). классный терминатор получится))

    skynet

    ОтветитьУдалить
  4. Походу нашествие роботов-убийц начнётся с Челябинска

    ОтветитьУдалить
  5. А мне интересно как в екселе все это рисуется.

    ОтветитьУдалить
  6. А что там рисовать.

    Добавить диаграмму - лепестковую. Вот и все рисование.

    ОтветитьУдалить
  7. Если можно поэксперементируй с разными плотностью и температурой обьектов. Оченно интересно в плане ошибок в определении дистанции.

    ОтветитьУдалить
  8. А как плотность и температура влияет на отражение света и звука?

    ОтветитьУдалить
  9. Приветствую земляка.
    Я примерно такое задание и поставил сыну на следующий год. В этом он пока просто научился управлять гусеницами. Гоняет Robo-51 (Робопики перед новым годом не было в продаже в Терре, взял ему на 51). Так что, похоже, в Челябинске намечается "битва роботов". Хотя у тебя есть фора.

    ОтветитьУдалить
  10. Некоторые тела могут погложать звук, например поролон или пенопласт. Все тела излучают инфракрасное излучение, чем тело теплее, тем излучение интенсивнее

    ОтветитьУдалить
  11. поглощать могут да, но не думаю. что настолько. Тут, скорей, играет роль форма поверхности.

    А ИК излучение тел тут мизерное, тем более в ИК датчике оно модулированное.

    ОтветитьУдалить
  12. ДИ А ты не проверял будет ли дальномер измерять расстояние до кромки воды??? Не прошибает ли он ее насквозь???

    Например измерить сколько воды налито в ведре ?? или в баке?? и на основе этого выводить потом все измерения на какой нибудь дисплейчик ,типа % заполнения ведра...

    Для данной идеи далномер пойдет?? а то поплавковые датчики -больно топорно )))) не айс ))

    ОтветитьУдалить
  13. А вот с водой это мысль!!! Надо попробовать!

    По поводу поплавковых датчиков. Кто тут проблему замера уровня пива в чане поднимал. Мол поплавок не рулит ибо он может лечь на пену.

    Мысль пришла такая - в баке плавает большой поплавок, настолько большой, что он занимает пространство от пола до потолка. Вроде столба. Стоит он неподвижно, а мы замеряем усилие с которым этот поплавок Давит на тензодатчик! Т.е. нет пива - висит и давление отрицательное, много пива - яростно всплывает и давит на датчик.

    ОтветитьУдалить
  14. Дык там ты обычный датчик давления рисовал, только по принципу сообщающихся сосудов - делал отвод трубки с датчиком в бок. Мне такая идея понравилась. и хотел было ее уже применить на свой проект, но не знаю как перевести 20 литров воды в Паскали, чтобы выбрать датчик с нужными пределами измерения.
    Как то с водкой попроще: 0,5литров- говорим о работе,1литр - о женщинах, 1,5 - о политике.

    ОтветитьУдалить
  15. ну это тоже вариант...но опять присутствует поплавок )))

    Есть и такой вариант - если емкость ,например квадратная,то мы ограничиваем передвижение поплавка так,чтобы наш дальномер "видел" поплавок всегда,тогда опять же по данному поплавку мы можем судить о % заполнения емкости )))

    Но если дальномер-и так видит уровень воды,и непрошибает ее до дна,то это супер )))

    ДИ ,а в мануалах на дальномер ничего не написано о плотности материалов ?? узнать бы прошиьбает ли он стекло,воду,жидкость с плотностью большей,чем плотность воды ??

    А почем брал эти дальномеры?...и почему именно эти??? качество хорошее??

    ОтветитьУдалить
  16. >Мне такая идея понравилась. и хотел было ее уже >применить на свой проект, но не знаю как >перевести 20 литров воды в Паскали

    литр это единица объема ,а Паскаль это единица давления ))) Они друг в друга не переводятся ))) Ты в чем-то ошибся ))

    ОтветитьУдалить
  17. Не, он не ошибся. Чем больше в баке литров, тем выше давление сжимаемого воздуха в мерной трубке. Но тут косяк в том, что есть зависимость от атмосферного давления. Да и если жидкость пенится и выделяет газы, то тоже не в кассу.

    ОтветитьУдалить
  18. З.Ы.
    Анонимы, подписывайтесь хотя бы формально, а то отключу вас нафиг.

    ОтветитьУдалить
  19. Тут прикол поплавка в том, что ему пофиг на пену и прочие проблемы жидкости. Он вообще не подвижен, а работает тут сила Архимеда, причем в статике.

    А какой дальномер? Оптический - может запотеть и забрызгаться, да еще и исполнение у него открытое, т.е. он сдохнет в этой емкости быстро. УЗ бывает герметичный, но не шибко то он точный и, опять же, если у тебя пена то будет тебе облом в обоих случаях.

    УЗ мне обошелся что то рублей в 500 емнип, а ИК около 400. Точно не помню.

    Почему эти? А
    76;ругих нет :)

    ОтветитьУдалить
  20. привет ДИ!
    жду открытия сайта ... расскажи всё-таки как этот csv файл создать и как же все-таки в exel его превратить в график....
    у меня просто в голове похожая идея бродила, а вот её реализация так и осталась пока на уровне идеи.... я думаю к моему посту многие присоединятся -)

    kkozyrev

    ОтветитьУдалить
  21. csv файл это просто данные в вида:

    1;68;0
    2;66;7
    3;68;6
    4;70;6
    5;75;7
    6;71;7
    7;71;7
    8;75;6
    9;68;6
    10;76;6
    11;68;6
    12;76;6
    13;70;6
    14;70;7
    15;69;7
    16;70;7

    обычный текстовый файл. Строки отделены переводмо каретки, столбцы точкой с запятой.
    В Экселе его открываешь через импорт и он в клеточки его вписывается. А уж график построить этому должны были еще в школе научить, на информатике :)

    ОтветитьУдалить
  22. ну да...это если пена ))) А если ее в процессе и не наблюдается???

    Я имел в виду УЗ )) т.к. ты правильно заметил -оптический запотевает )))

    Измерять в емкости будем холодную воду ,а образование пены - это если чан с пивом ))


    нашел мануал на твой дальномер ШАРП, минимальное расстояние 10см,максимальное 80см, Соотвествует заявленному?? Для робота - отлично )))


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

    Dr.E.Brown

    ОтветитьУдалить
  23. DI HALT комментирует...

    поглощать могут да, но не думаю. что настолько. Тут, скорей, играет роль форма поверхности.

    Еще как могут, вот например мой робот с аналогичным УЗ-сэнсором на кошку не реагирует. Так что думаю для сканирования местности он не очень пригоден. Даже на сигнализацию не очень. Можно обмататся паролоном и он не сработает. Что с успехом проделали MythBusters в одной из своих легенд.

    ОтветитьУдалить
  24. Я пока получил эпик фейл при попытке сканировать местность. Если на ближней дистанции шарп решает, то вот уз лажает по всей длинне. Видимо прошивка у него и впрям корявая, надо свою написать.

    ОтветитьУдалить
  25. Не знаю как работает сервомашинка. Наверное она поворачивается из стороны в сторону. Провода же не путаются. Система координат наверное(угол поворота, расстояние). Интересно, какой период одного поворота машинки? Также не понял результаты опыта. Как дальномер смог описать прямоугольную форму коробок (заглянуть за угол).
    Для отладки конструкции можно выбрать объект попроще(стену; полигончик для испытании построить, коробка какая-нибудь большая или малая), чтобы однозначно понять оценки прибора, на каких расстояниях, с какого угла он хорошо воспринимает объекты.

    Начинающий радиолюбитель.

    ОтветитьУдалить
  26. Серва вертит бошкой на 120 градусов. Сиреневая область это область видимости датчика. Т.е. как он промерил расстояние

    ОтветитьУдалить
  27. DI а расшифруй свои записи в файлике...
    1;68;0
    2;66;7
    3;68;6
    это что, просто я могу понять только две цифры, угол, затем расстояние, а третья цифра???
    и ты не ответил, как удалось заглянуть за коробку-)))) ведь ты же не двигал свою модель....

    kkozyrev

    ОтветитьУдалить
  28. Непонятно почему от коробок тень не идет.

    ОтветитьУдалить
  29. Вы че, прикалываетесь чтоль? Какое "заглянул за коробку", какое "от коробок тень не идет"???? Ди получил данные с сенсора и построил радиальный график, синяя залитая область это то что получилось. А потом он просто намалевал на этом графике черные прямоугольники, от руки, чтоб нам всем наглядно показать что вот именно этот участок графика и соответствует обнаружению коробки. Черные прямоугольники там просто условно, на самом деле датчик обнаруживает токо поверхность, на которую он непосредственно смотрит, и глубина коробки остается неизвестна. Насчет "а показания ИК локатора подобны тени" надо понимать скорее всего что мол локатор светит из центра круга и куда добивает, там синяя закрашенная область на графике.
    Condor

    ОтветитьУдалить
  30. Кстати, эти ИК датчики имеют ооочень маленькое поле зрения. С одной стороны хорошо, но с другой стороны нужно сканировать не только по окружности, но и мотать башкой вверх вниз... А то достаточно плоские предметы робот не замечает и натыкается на них... Опять же если датчик этот не самая высокая точка робота, то он может поднырнуть под тот же стул или диван, не замечая его и удариться торчащими предметами, которые выше сенсора.
    Condor

    ОтветитьУдалить
  31. shalian
    а говоришь причем тут плотность и температура. С температурой понятно, там модуляция (хотя с утюгом я всеж попробовал бы, а вдруг "зашкалит"), вот с плотностью все совсем не однозначно. очень удивила реакция на кошку! она так рассеивает-поглощает УЗ???

    ОтветитьУдалить
  32. ППросто кошка обмазана светопоглощаюаващеблинщей краской и обмотана паролоном, вот ее и не видно))
    DDriver

    ОтветитьУдалить
  33. Третее значение это показания с УЗ локатора. от 0 до 256 где 0 это 0, а 256 около 6 метров.

    ОтветитьУдалить
  34. А почему никто не сказал про цвет отражаемой поверхности? По себе знаю что ИК по разному отражается от черной и белой поверхности. Если первую робот может увидеть, лишь почти уперевшись в неё, то от второй будет шарахаться за метр.
    Ну и со стеклами могут быть интересные эксперименты. Как с прозрачными, так и отражающими.
    Fanker

    ОтветитьУдалить
  35. А тут от цвета мало зависит. Данный датчик улавливает угол отражения. Поэтому он либо видит и определяет дистанцию верно, либо не видит вообще.

    Проблемы могут быть с черными матовыми поверхностями или зеркальными под углом

    ОтветитьУдалить
  36. >>> А тут от цвета мало зависит....

    +1 ))

    С зеркальными под углом понятно )) а черные матовые -неужто так поглощают... ???

    вопрос с неоднозначностью плотности-на 1 место )))

    Знакомый говорит что воду не прошибает -ммм...интересно...))) ДИ ты еще не пробывал??


    От оконного стекла лазерный луч отражается ( это испытано ).

    А вот водяной пар, прозрачный для глаза человека гасит УЗ сигнал.
    Ну и температуры более 40 градусов его тоже разрушают. По-моему здесь и кроется прикол с кошкой )))

    Да и вообще, переходы меж средами для УЗ сигнала не полезны.


    DR. E. Brown

    ОтветитьУдалить
  37. Спасибо Condor, я начинаю понимать смысл чёрных прямоугольничков. :-)

    Начинающий радиолюбитель

    ОтветитьУдалить
  38. есть предложение двигать датчик по кругу направленный в центр этого круга на предмет и сделать из него 2d сканер... а потом с большой бормашиной и приводом сделать дупликатор того что внутри!
    И вопрос не по теме... как на односторонней плате припаять ряд штырьковых разъемов со стороны контактных дорожек как здесь: http://4.bp.blogspot.com/_El9ui4t9Njk/S2SF79r--sI/AAAAAAAAAG8/ny2sy0MaQT4/s320/pcb_back.JPG

    ОтветитьУдалить
  39. Точность слишком низкая. Тебе нужна копия с погрешностью плюс минус сантиметр?

    ОтветитьУдалить
  40. Романюк Сергей
    Можно попробовать аккуратно нагреть гребенку, и вытащить штырьки, запаяв их отдельно.

    Как-то с материнок проще было отколупнуть пластик, и выпаивать потом штырьки отдельно... Ну развлекался так.

    ОтветитьУдалить
  41. Ну да! +/- см подойдет! Засовываешь голову в твой сканер а рябом перфоратор из мрамора делает бюстик! Шик! Венер настрогать (надолбить) можно....

    ОтветитьУдалить
  42. Я думаю наживить гребенку на припой не до конца засунув в отверстия, а потом какой нибудь плоской насадкой на паяльник нагреть все и чик.

    ОтветитьУдалить
  43. Антон
    Ну красиво же как то делают... Хочется не ломать, а потом делать...

    ОтветитьУдалить
  44. Хм. Поэкспериментировал сейчас с GP2D120. Врет втрое. Буду ковырять...

    ОтветитьУдалить
  45. Ди, а с помощью какой программы ты этот csv-файл получаешь?

    ОтветитьУдалить
  46. У меня микроконтроллер сам ксв данные гонит. просто в терминалку, оттуда сохраняю лог как текст и переименовываю в ксв.

    ОтветитьУдалить
  47. 2 проблемы:
    1. любой движок будет давать сильное тепло - что внесет большие погрешности в инфрокрасный диапазон.кроме того инфру можно излучать сбоку другим диодом - соответственно легко создать помехи.
    2. ульразвук не даст нормальной точности (до 5см) в измерениях. К тому же разные тела по разному его поглощают- соответственно легко имитировать что ты далеко.

    Использование же лазерного сканера гарантирует мощьный сигнал в заданном диапазоне и легкую фиксацию на цели.

    ОтветитьУдалить
  48. осталось приделать пару MG-44 на треногах и таки переснять вторых чужих но уже с российскими актерами...

    ОтветитьУдалить