roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 15:15

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 93 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 7  След.
Автор Сообщение
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 27 май 2011, 02:08 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Макетку собрал - попробовал. Правда фотодиодов не оказалось, одни ТСОПы. Попытка заменить светодиодом - неудачно. Надо утром заехать в магазин.
Один цикл измерений - 20 миллисекунд. Попробую уменьшить.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 27 май 2011, 11:52 
Не в сети
Аватара пользователя

Зарегистрирован: 02 окт 2010, 15:19
Сообщения: 58
Откуда: Южный Округ Москвы :)
Skype: nevermindim
прог. языки: PROLOG
ФИО: Дмитрий А.
20 миллисекунд на ТСОПе?
Если и на фотодиоде будет похожая скорость -- очень хорошо.

_________________
"Вау! Настоящий робот! Или это дурацкий новогодний костюм?"

( (С) "Футурама" http://ru.wikiquote.org/wiki/%D0%A4%D1% ... 0%BC%D0%B0)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 27 май 2011, 15:40 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
На светодиоде в качестве фотодиода.
Причем очень неуверенно.
Нашел фотодиод, неопознанный - попробую.
Сейчас так:
Вложение:
IMG_20110527_153753.jpg
IMG_20110527_153753.jpg [ 252.23 КиБ | Просмотров: 1948 ]

Вложение:
IMG_20110527_153806.jpg
IMG_20110527_153806.jpg [ 300.33 КиБ | Просмотров: 1955 ]

Светодиоды подогнуты так, чтобы "пятна" на поверхности совпадали.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 27 май 2011, 22:29 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Нищета...
Фотодиод оказался инфракрасным.
Из-за отсутствия вариантов вскрыл транзистор МП37.
Результаты. Чем сильнее отраженный сигнал - тем меньше значение.
На белом:
sensor OFF = 159
sensor Blu = 98
sensor Red = 89
sensor ON = 43
sensor interval = 116



на синем:
sensor OFF = 152
sensor Blu = 125
sensor Red = 139
sensor ON = 111
sensor interval = 41



На красном:
sensor OFF = 151
sensor Blu = 118
sensor Red = 97
sensor ON = 70
sensor interval = 81


И это со спиленным транзистором. %)
Придумаю алогоритм автокалибровки, каждое измерение будет состоять из четырех циклов:
sensor OFF - компенсируем фоновую засветку. Измеряем при выключенных светодиодах.
sensor Blu - сигнал при синей подсветке.
sensor Red - при красной
sensor ON - при обоих, для контроля на ошибку, "баланс красно-синего", лень подстроечники на светодиоды ставить, пусть МК считает.

Добавлено спустя 1 час 39 минут 49 секунд:
Скетч для подбора резистора (максимальный интервал значений) и наводки светодиодов:
Код:
int ledPin =  13;    // LED connected to digital pin 13
int Rled0 =  2;    // Red LED connected to digital pin 0
int Bled0 =  3;    // Blue LED connected to digital pin 1
int  analogValue0;
int  analogValueB;
int  analogValueR;
int  analogValueRB;

void setup() {
  Serial.begin(9600);
  pinMode(ledPin, OUTPUT);     
  pinMode(Rled0, OUTPUT);     
  pinMode(Bled0, OUTPUT);     
}

void loop() {

  // read the analog input into a variable:
   analogValue0 = analogRead(0);
  // wait 10 milliseconds for the analog-to-digital converter
  // to settle after the last reading:
   delay(10);   


   digitalWrite(Bled0, HIGH);   // set the Bled on
   delay(1);   
   analogValueB = analogRead(0);
    digitalWrite(Bled0, LOW);   // set the Bled off
   // wait 10 milliseconds for the analog-to-digital converter
      delay(10);

   digitalWrite(Rled0, HIGH);   // set the Rled on
   delay(1);   
   analogValueR = analogRead(0);
    digitalWrite(Rled0, LOW);   // set the Rled off
     // wait 10 milliseconds for the analog-to-digital converter
   
   delay(10);   
   digitalWrite(Bled0, HIGH);   // set the Bled on
   digitalWrite(Rled0, HIGH);   // set the Rled on
   delay(1); 
   analogValueRB = analogRead(0);
   // print the result:
   delay(1000);
   digitalWrite(Bled0, LOW);   // set the Bled ff
   digitalWrite(Rled0, LOW);   // set the Rled ff
   

   Serial.print("sensor OFF = " );
   Serial.println(analogValue0);
   
   
   Serial.print("sensor Blu = " );
   Serial.println(analogValueB);
   
   Serial.print("sensor Red = " );
   Serial.println(analogValueR);

   Serial.print("sensor ON = " );
   Serial.println(analogValueRB);
   
   
   Serial.print("sensor interval = " );
   Serial.println(analogValue0-analogValueRB);
   
   Serial.println();
   Serial.println();
   delay(20);
}

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 27 май 2011, 23:02 
Не в сети
Аватара пользователя

Зарегистрирован: 02 окт 2010, 15:19
Сообщения: 58
Откуда: Южный Округ Москвы :)
Skype: nevermindim
прог. языки: PROLOG
ФИО: Дмитрий А.
RootAdmin писал(а):
на синем:
sensor Blu = 125
sensor Red = 139
На красном:
sensor Blu = 118
sensor Red = 97

Разницы в дельте от освещения нет -- это плохо.
"Дрожание" по высоте даст разброс значений, перекрывающий дельту...
Я потому и настроен хоть на какой-то видимый диапазон, чтобы дельта в определении цвета была значительная.
Иначе гарантированно определить не получится.
Скорость какая получилась?

_________________
"Вау! Настоящий робот! Или это дурацкий новогодний костюм?"

( (С) "Футурама" http://ru.wikiquote.org/wiki/%D0%A4%D1% ... 0%BC%D0%B0)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 27 май 2011, 23:27 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
В общем - идея жизнеспособна.
Транзистор плохо реагирует на синий светодиод... Почти никак
Скорость - без вывода на UART около 50 в секунду.
DimRoboForum, попробуйте свой фотодиод, как будет работать на синий и красный светодиоды?

Добавлено спустя 10 минут 56 секунд:
Проверил, все ж распознает. Полоски синей и красной изоленты на столе. ;) Зажигает светодиод если красный. И другой - если синий. Высотой игрался плюс-минус 10 мм.

Добавлено спустя 4 минуты 15 секунд:
Подогнал яркость светодиодов резисторами. Жаль, нет одинаковых, красный - от оптической мыши, мощный.
В "нормальном состоянии" от фотодиода до поверхности 10 мм
Если поднимаешь больше чем на 25 мм - светодиод начинает помаргивать над синей. Красную распознает четко.
Попробуйте...

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 27 май 2011, 23:59 
Не в сети
Аватара пользователя

Зарегистрирован: 02 окт 2010, 15:19
Сообщения: 58
Откуда: Южный Округ Москвы :)
Skype: nevermindim
прог. языки: PROLOG
ФИО: Дмитрий А.
Ок. Замечательно!
Буду пробовать.
Только получится поэкспериментировать после 1-го числа.
До 1-го нужно готовиться к судейству на Московском кубке по Евроботу...
Номиналы, как на схеме? (Конденсатор 100мкф?)

_________________
"Вау! Настоящий робот! Или это дурацкий новогодний костюм?"

( (С) "Футурама" http://ru.wikiquote.org/wiki/%D0%A4%D1% ... 0%BC%D0%B0)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 28 май 2011, 00:09 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Схему с номиналами завтра вывешу. Конденсатор - да, можно меньше. И шунтирован керамикой на 0,1. Транзисторы-ключи светодиодов - npn 9014, можно любые.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 30 май 2011, 02:41 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Датчик цвета S371. Опрос + sprintf + выгрузка в УАРТ - около 20 мс.
Очень чувствителен к расстоянию до объекта. По даташиту 4 мм - так, примерно, и есть. Но это чтобы воспроизводить похожий цвет. А если просто выделять доминирующий, то область действия увеличится.

Во время тестов как-то печально сдох i2c в ОРдуине. Пришлось на ПИКе мастырить (заодно проверил i2c библиотеку, которую HiTech поставляет в семплах. Редкостный идиотизм, к тому же неработающий...)

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 30 май 2011, 07:30 
Не в сети
Аватара пользователя

Зарегистрирован: 12 авг 2010, 15:10
Сообщения: 897
Откуда: Астраханская обл.
А на цветном видеоглазке не вариант датчик сделать? И ковырять RGB-сигнал с выхода.

_________________
Соединяй и здравствуй.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 30 май 2011, 09:33 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Цена: розничная: 3186.00 руб.
оптовая: 3021.00 руб.
дилерская: звоните

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 30 май 2011, 11:08 
Не в сети
Аватара пользователя

Зарегистрирован: 12 авг 2010, 15:10
Сообщения: 897
Откуда: Астраханская обл.
В смысле "дорого"? Это смотря как считать, и где покупать... На мой дилетантский взгляд применимо. Астраханская команда использует, и вроде успешно.
У камеры лучше дальность, и распознаваемость сигнала слабо зависит от засветок, вспышек и импульсных осветителей, а на соревнованиях их хватает.

_________________
Соединяй и здравствуй.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 30 май 2011, 17:21 
Не в сети
Аватара пользователя

Зарегистрирован: 02 окт 2010, 15:19
Сообщения: 58
Откуда: Южный Округ Москвы :)
Skype: nevermindim
прог. языки: PROLOG
ФИО: Дмитрий А.
Eruman писал(а):
А на цветном видеоглазке не вариант датчик сделать? И ковырять RGB-сигнал с выхода.

Я посмотрю, как на финале видеокамеры работают ;)
На следующий год, если найду желающего с видеосигналом поработать, может и "замутю".
А на датчики цвета я купил по ардуине нано: 8х700=5600, так что цена сопоставима :)
Проблема оказалась в i2c: на ардуине 5В (даже не очень понятно, когда подаю 7 с лишним Вольт питания {рекомендовано от 7В до 12В}, то на цифровых выходах те же 7 с лишним; что же на шине???), а на датчике цвета от 2.6В до 3.5В.

RootAdmin писал(а):
Схему с номиналами завтра вывешу.

Получается?

_________________
"Вау! Настоящий робот! Или это дурацкий новогодний костюм?"

( (С) "Футурама" http://ru.wikiquote.org/wiki/%D0%A4%D1% ... 0%BC%D0%B0)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 30 май 2011, 17:26 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
DimRoboForum писал(а):
Eruman писал(а):
А на цветном видеоглазке не вариант датчик сделать? И ковырять RGB-сигнал с выхода.

Я посмотрю, как на финале видеокамеры работают ;)
На следующий год, если найду желающего с видеосигналом поработать, может и "замутю".
А на датчики цвета я купил по ардуине нано: 8х700=5600, так что цена сопоставима :)
Проблема оказалась в i2c: на ардуине 5В (даже не очень понятно, когда подаю 7 с лишним Вольт питания {рекомендовано от 7В до 12В}, то на цифровых выходах те же 7 с лишним; что же на шине???), а на датчике цвета от 2.6В до 3.5В.

Я бы рекомендовал купить горсть пиков pic16f1827 за 40 руб штука (они работают от 3,3В, толерантные к 5В), прошивку я легко адаптирую с 18-го пика на 16-й, а данные по цвету выкидывать на УАРТ. Было бы вообще зашибись сделать эти пики i2c слейвами и повесить их все на одну шину (в pic16f1827 два i2c - один мастером опрашивает датчик, другой слейвом сливает инфу в общую шину), но у меня что-то не получилось заставить i2c slave работать.

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ЕВРОБОТ 2011
СообщениеДобавлено: 30 май 2011, 17:40 
Не в сети
Аватара пользователя

Зарегистрирован: 02 окт 2010, 15:19
Сообщения: 58
Откуда: Южный Округ Москвы :)
Skype: nevermindim
прог. языки: PROLOG
ФИО: Дмитрий А.
Будет команда -- можно работать :)
"В одного" я повёлся на лёгкость программирования Ардуино и подключения к ней периферии.
(Тем более, что паяльник до сего момента, я брал в руки лет 20 назад...)

_________________
"Вау! Настоящий робот! Или это дурацкий новогодний костюм?"

( (С) "Футурама" http://ru.wikiquote.org/wiki/%D0%A4%D1% ... 0%BC%D0%B0)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 93 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 7  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO