roboforum.ru

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

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

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

setar » 11 фев 2016, 01:55

а такой анализ нормально будет ?
unsigned long currentTime;
currentTime = millis();


Код: Выделить всёРазвернуть
#if defined(laser_power_pwm_target)
void RefrPowerLaser(uint8_t power)
{
  if (power > laser_power_pwm_target && RegPowLaser > 1){
    RegPowLaser--;
    analogWrite(LASER_VCC_PIN,RegPowLaser);
  }
  if (power < laser_power_pwm_target && RegPowLaser < 255){
    RegPowLaser++;
    analogWrite(LASER_VCC_PIN,RegPowLaser);
  }
}
#endif


Добавлено спустя 1 минуту 39 секунд:
dccharacter писал(а):Но вообще это очень хреновый вариант - ты в этом while сидишь неопределенное количество времени, на которое не влияет разве что скорость ветра на луне...

согласен отчасти, но тут как раз работает та самая емкость в 10мкф. без ожидания выхода на заданый уровень не получается

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

Dmitry__ » 11 фев 2016, 01:56

dccharacter писал(а):А что вот эта функция делает: RefrPowerLaser(dataMax);?

кхмммм, еще не добрались до понимания работы регулировки лазера? :shock:
Она подгоняет мощность лазера так, чтоб стабилизировать (dataMax) интегрированием.
Вызывать функцию можно в любых местах, но желательно часто...

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

dccharacter » 11 фев 2016, 02:07

Dmitry__ писал(а):Она подгоняет мощность лазера так, чтоб стабилизировать (dataMax) интегрированием.

Ага, щаз...
Там потенциальная задержка в 250мс сидит и никакого интегрирования :-)

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

Dmitry__ » 11 фев 2016, 02:16

Чо? :shock:

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

dccharacter » 11 фев 2016, 02:20

На код-то посмотри

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

Dmitry__ » 11 фев 2016, 02:21

Ага, сливаю ветку setar, аж интересно стало :)

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

dccharacter » 11 фев 2016, 02:26

Кто-то читает только каждое 10-е сообщение!

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

Dmitry__ » 11 фев 2016, 02:31

Ну чо-то да, до фигища изменений. Но интегрирование осталось. если что я говорил про свой код :oops:

Добавлено спустя 1 минуту 4 секунды:
dccharacter писал(а):Кто-то читает только каждое 10-е сообщение!

Потом опять будешь говорить, что я подь...щик? :)

Добавлено спустя 3 минуты 18 секунд:
Вообще, все нормально у Сергея в коде, добавил каких-то ограничений, но алгоритм - интегратор.
А вообще, эта функция у него в текущей ветке не используется, везде закомментена :D

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

setar » 11 фев 2016, 02:40

я просто не хочу текущую кашу сливать :)
завтра окультурю

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

dccharacter » 11 фев 2016, 02:51

Вообще очень интересно, что ты интегратором называешь. Я вижу итеративное приближение равными шагами к цели.

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

Dmitry__ » 11 фев 2016, 02:56

Это и есть интегратор, полный аналог на оу. В данном случае он с логическим входом, т.е. с ограничителем на входе с бесконечным усилением.
Интегра́тор, блок интегри́рования — техническое устройство, выходной сигнал (выходная величина, выходной параметр) которого пропорционален интегралу, обычно по времени, от входного сигнала.

https://ru.wikipedia.org/wiki/%D0%98%D0 ... 0%BE%D1%80
Изображение

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

dccharacter » 11 фев 2016, 05:57

Хорошие новости, что на двойном лазере внешняя засветка не влияет АБСОЛЮТНО
Плохая в том, что пока подложка влияет :-)

Добавлено спустя 47 минут 48 секунд:
Мда, все равно 2мм разницы на белом/черном с двумя лазерами :-(

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

linvinus » 11 фев 2016, 11:51

Dmitry__ писал(а):Нет, говорил уже, без допила марлина - датчик нерабочий. См. мои видео с тестом допиленного марлина.

но принцип был непонятен, и народ массово отверг идею модификации принтера.

Dmitry__ писал(а):А чего тут обьяснять? Чтоб меньше времени тратить на тесты.
Вот вам рекомендации, если кто-то раньше меня доберется до допила датчика:
Едем вниз, уменьшаем скорость после срабатывания порога, заставляем проехать марлин ровно 0.3мм. В это время записываем лог мощности лазера. Анализируем лог, находим где мощность перестала резко спадать, выставляем этот уровень порогом, едем вверх (очень медленно). Останавливаемся на пороге. Все, дамки.

Рекомендации для разных столов:
Для всяких матовых столов уже все сделано, мощности лазера достаточно. Для стекла еще надо химичить. Я 3-ю неделю (блин, уже бы приехали) не могу добраться до ебея, заказать синий лазер на 50 мВт. Тут важна и мощность и цвет лазера.
Для убирания фоновых засветок от фонарей, говорил уже и проверял:
Делайте диафрагму - перед обьективом: ставьте черную бумагу с дырочкой, дырка сильно уменьшает чутье пзс, а заодно сильно увеличивает глубину резкости. Дырку подбирайте экспериментально...

В общем спустя ровно месяц мы пришли к такому же выводу.

Дмитрий куда смотреть чтобы понять как вы реализовали свою идею?
Всё в одном месте можете собрать? Как патчи делаются знаете? (diff -Naur и т.д.)

Блин вот и верь после этого в глобальный заговор :) 4 человека месяц не могли понять кто что делает и какие результаты :D

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

Madf » 11 фев 2016, 13:55

Dmitry__ писал(а):я тут допиливаю cnc станок, и как ты уже догадался, этот датчик хочу применить там...

Пылью не забьётся? Да и поверхность божет быть не чистой (покрыта пылью, остатками обработки).

Dmitry__ писал(а):Создаем тему "триангуляция для cnc"

Давай! Иначе тема не раскрыта! :D

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

Dmitry__ » 11 фев 2016, 18:08

linvinus писал(а):Дмитрий куда смотреть чтобы понять как вы реализовали свою идею?

Я в затяжном отпуске с этим датчиком. Программы месяц или больше не трогал. Мой вариант смотреть на моем гите: https://github.com/DmitLil
Марлин не выкладывал на гит. В эти ветку кидал измененный код функции run_z_probe.
forum107/topic15929-540.html?style=8#p346445
forum107/topic15929-495.html#p344410

Madf писал(а):Пылью не забьётся? Да и поверхность божет быть не чистой (покрыта пылью, остатками обработки).

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


cron
Rambler\'s Top100 Mail.ru counter