roboforum.ru

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

Датчик касания оптический, триангуляция

Обсуждение технологии печати на 3D принтерах. Самостоятельное изготовление и приобретение. RepRap и его последователи.

Re: Датчик касания оптический, триангуляция

Сообщение JonnyQuest » 08 янв 2016, 03:18

Доброго времени суток. на Digispark не греется стабилизатор питания? у меня при 3х каналах PWM при включенни всех на 255 разогревается до неприличных температур (((( левак попался? потребление 60мА
JonnyQuest
 
Сообщения: 26
Зарегистрирован: 15 июл 2015, 13:19

Re: Датчик касания оптический, триангуляция

Сообщение setar » 08 янв 2016, 15:12

максимальный ток на ноге 40мА (по документации AtMega, тини не помню, вероятно так же)
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Датчик касания оптический, триангуляция

Сообщение setar » 09 янв 2016, 01:11

обновил репозитарий (https://github.com/setar/RF3Sens)

* Добавлено описание проекта
* Учет задержки от скорости порта при дебаге
* Добавлен визуализатор пзс матрицы на компьютере, для калибровки датчика
* переименование board_ArduinoNano_mcupower.h -> board_ArduinoNano_wPower.h

идея Димы о переносе файлов сенсоров и борд в свои отдельные каталоги не прошла, так просто проект не собирается.
Возможно это какие то нюансы от того что я сижу на MAC OS X , но для совместимости так лучше не делать.
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Датчик касания оптический, триангуляция

Сообщение Dmitry__ » 09 янв 2016, 02:22

setar писал(а):идея Димы о переносе файлов сенсоров и борд в свои отдельные каталоги не прошла, так просто проект не собирается.

Это косяк быдлодуины, последняя версия собирает нормально:
https://github.com/arduino/Arduino/issues/1004
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Датчик касания оптический, триангуляция

Сообщение setar » 09 янв 2016, 02:44

Дим, проверь проект из базовой ветки https://github.com/setar/RF3Sens (качни чистый git clone в отдельный каталог) на предмет работоспособности на DigiSpark
у меня ни в какую не желает слать данные в soft serial
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Датчик касания оптический, триангуляция

Сообщение dccharacter » 09 янв 2016, 03:09

Ихихихихи ахахахаха
Код: Выделить всёРазвернуть
void SendOnlySoftwareSerial::setTX(uint8_t tx)
{
  pinMode(tx, OUTPUT);
  digitalWrite(tx, HIGH);
  _transmitBitMask = digitalPinToBitMask(tx);
  uint8_t port = digitalPinToPort(tx);
  _transmitPortRegister = portOutputRegister(port);
}


Добавлено спустя 26 секунд:
Ща Дима бросится библиотеку перепиливать :-)

Добавлено спустя 32 секунды:
setar, попробуй пинТХ на выход сконфигурячить
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Датчик касания оптический, триангуляция

Сообщение Dmitry__ » 09 янв 2016, 03:18

setar писал(а):(качни чистый git clone в отдельный каталог) на предмет работоспособности на DigiSpark
у меня ни в какую не желает слать данные в soft serial

Да, косячок, кто-бы это был? :), собирается проект с закомментированным "//#define software_serial 1". Ide даже не мяукает варнингами. А ведь у меня было:
Код: Выделить всёРазвернуть
#if defined(flg_serial_debug) && defined(__AVR_ATtiny85__)
//#error "Correctly select board"
   #include <SendOnlySoftwareSerial.h>
   #define DEBUG_TX_PIN      1 //Adjust here your Tx debug pin
   SendOnlySoftwareSerial MyDbgSerial(DEBUG_TX_PIN, false); //true allows to connect to a regular RS232 without RS232 line driver
#endif

В общем, для дигиспарк обязательно раскомментировать "#define software_serial", и допишите проверку этого дела. Когда в иде выставляешь плату с тини, появляется дефайн __AVR_ATtiny85__, вот его и используйте для корректной конфигурации сенсора юзером.

Добавлено спустя 1 минуту 26 секунд:
dccharacter писал(а):Ихихихихи ахахахаха

Никаких "хи-хи". Я это видел и никуда переписывать не бросился :)
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Датчик касания оптический, триангуляция

Сообщение dccharacter » 09 янв 2016, 07:26

Ой, меня тут светлая мысль посетила. ПОжелайте удачи

Добавлено спустя 3 минуты 28 секунд:
мысль такая. В каждый цикл делаем замер, включаем лазер, делаем замер
Во-первых, можно отсечь внешние условия
Во-вторых есть надежда, что шаттер не успеет все-таки понять, что происходит, то есть измерения будут сравнимыми
Очень мне просто не нравится идея пошаговых алгоритмов, когда от времени все зависит. Нужен мгновенный безусловный детект. Такой детект даже с 0.1 точностью лучше, чем пошаговый с 0.01

Добавлено спустя 32 минуты 55 секунд:
Че-то при мерже upstream похерилась ветка my_config. Как это? Вроде гит должен все все все сохранять же...

Добавлено спустя 1 минуту 14 секунд:
Делал вот так: https://help.github.com/articles/mergin ... your-fork/

Добавлено спустя 1 час 35 минут 6 секунд:
я там от расстройства запилил сохранение настроек МаусВьювера в конфиг. Юзабилити зашкаливает

Добавлено спустя 13 минут 40 секунд:
Слуш, ну какая-то бага в коде - периодически начинается снег вместо картинки. Виновата прошивка дуни. Что-то вроде в прошлый раз понял в чем дело, но теперь опять забыл

Добавлено спустя 12 минут 54 секунды:
А баг такой, что кто-то ADNS_read исправил и теперь там нет проверки валидности кадра... Я???

Добавлено спустя 2 минуты 2 секунды:
А, это у меня уже.... Простите...

Добавлено спустя 9 минут 46 секунд:
Причем при изменении координаты картинка восстонавливается временно, а потом как по таймауту в снего уходит. Засыпает что ли?

Добавлено спустя 45 минут 13 секунд:
А, ну да, ресет писал по адресу 0x00, а в 2620 конфиг сидит на 0х40
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Датчик касания оптический, триангуляция

Сообщение Dmitry__ » 09 янв 2016, 08:12

Тихо мирно сам с собою я веду беседу :D
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Датчик касания оптический, триангуляция

Сообщение dccharacter » 09 янв 2016, 11:53

Мне можно после пяти дней командировки

Добавлено спустя 53 минуты 19 секунд:
Хм, а там что-то интересное происходит. Если два раза считать maxPix, при этом первый раз подсветка лазером будет, а второй нет - данные один фиг будут одинаковые. Надо понять как кроме таймаута вычислить обновление стат-регистров

Добавлено спустя 29 минут 24 секунды:
А еще мы работали на дефолтном ФПС-е (для 2620 это 1500 кадров).
Код: Выделить всёРазвернуть
  ADNS_write(Frame_Period, 0xD7); //2300 fps


Добавлено спустя 2 часа 15 минут 50 секунд:
Мда...
Вложения
new.jpg
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Датчик касания оптический, триангуляция

Сообщение setar » 09 янв 2016, 15:35

Андрей, в датчик 5020 наверное нужно добавить
#define Configuration 0x00
?

Добавлено спустя 19 минут 31 секунду:
dccharacter писал(а):А еще мы работали на дефолтном ФПС-е (для 2620 это 1500 кадров).
Код: Выделить всёРазвернуть
  ADNS_write(Frame_Period, 0xD7); //2300 fps


запили это в коммит, не понимаю куда вставить нужно
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Датчик касания оптический, триангуляция

Сообщение Dmitry__ » 09 янв 2016, 16:01

dccharacter писал(а):Хм, а там что-то интересное происходит. Если два раза считать maxPix, при этом первый раз подсветка лазером будет, а второй нет - данные один фиг будут одинаковые. Надо понять как кроме таймаута вычислить обновление стат-регистров

Надо считывать данные гарантированно медленнее фпс. А так я говорил, в пзс регистры как 2-х портовая память. Dsp обновляет данные в регистрах со своей скоростью, мы считываем данные по spi с ядренной скоростью. Поэтому в регистрах, где требуется синхронизация, присутствует флаг новых данных.

dccharacter писал(а):А еще мы работали на дефолтном ФПС-е (для 2620 это 1500 кадров).

Вот тут надо однозначно повышать скорость. Слишком светлая картинка с пзс. Мощность лазера приходится понижать до такого значения, когда он выходит из режима когерентного излучения и становится простым светодиодом. Пятно становится значительно грязнее. Рядом с пятном появляется куча артефактов. А в 2610 нет такого регистра :( Я все думаю из чего сделать фильтр на обьектив. Можно еще под обьектив подкладывать черный лист с мелкой дыркой - диафрагма так сказать...

Ты запилил pwm на лазер? Надо мне обновить репозиторий, у меня изменений в проге - тыща.
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Датчик касания оптический, триангуляция

Сообщение setar » 09 янв 2016, 16:11

запилил корпус для прототипа:

Добавлено спустя 9 минут 13 секунд:
На видео сначала приближение к черной бумаге, затем к белой
Вложения
Снимок экрана 2016-01-09 в 14.55.23.png
Снимок экрана 2016-01-09 в 14.56.33.png
Снимок экрана 2016-01-09 в 14.58.08.png
Снимок экрана 2016-01-09 в 14.58.24.png
Снимок экрана 2016-01-09 в 14.58.50.png
Снимок экрана 2016-01-09 в 14.59.05.png
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Датчик касания оптический, триангуляция

Сообщение dccharacter » 09 янв 2016, 19:57

Сергей, у тебя лазер плохо сфокусирован, от этого maxPixel даже не доходит до 60

Добавлено спустя 51 секунду:
А еще смущает пила сильная на черной бумаге - у тебя лазер постоянно включен или пыхает?

Добавлено спустя 1 минуту 21 секунду:
Dmitry__ писал(а):Ты запилил pwm на лазер? Надо мне обновить репозиторий, у меня изменений в проге - тыща.

Не, я просто делаю замеры без лазера, потом с лазером. Пока ничего хорошего это не дало. Но даст, если начать бороться с засветкой. Но с ней бороться смысла нет, пока и без засветки точность не получается
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Датчик касания оптический, триангуляция

Сообщение om2804 » 09 янв 2016, 22:00

Извиняюсь, что влезаю, но код, конечно, жесть :)
Куча макросов с непонятными названиями, спагетти, магия...
Надеюсь это только тесты и всё порефакторите. Не оставляйте такой код в релизе!
Аватара пользователя
om2804
 
Сообщения: 2044
Зарегистрирован: 30 апр 2012, 20:03
Откуда: Архангельск
Skype: om2804
прог. языки: С/С++/C#

Пред.След.

Вернуться в 3D печать

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

Сейчас этот форум просматривают: Google [Bot] и гости: 10