на раздумье, чтобы перед глазами было, свеженькое
Добавлено спустя 8 минут 21 секунду:
кстати, это тоже не менее полезно будет.
тот же тест с замедлением оси Z d 8 раз (медленное приближение так проходит)
Технический форум по робототехнике.
linvinus писал(а):2) pix_sum поднялось всего на 20 пунктов а потом вернулось, вот это интересно,
было бы здорово увидеть картинку с датчика до и после.
linvinus писал(а):Дима регулирует лазер как функцию от pix_max, и shutter регулируется от pix_max, но каждый по своей независимой функции, а что если зарегулировать лазер от shutter ?
linvinus писал(а):1) единственное, max и min должны быть в диапазоне [0 - 63] а у вас до 120 доходит как так?
2) pix_sum поднялось всего на 20 пунктов а потом вернулось, вот это интересно,
было бы здорово увидеть картинку с датчика до и после.
а что если зарегулировать лазер от shutter ? тогда
linvinus писал(а):Дима регулирует лазер как функцию от pix_max, и shutter регулируется от pix_max, но каждый по своей независимой функции
LastSqual = Frame[0];
MALongSqual=GetSMA(dataSqual,MA_LONG,LastSqual);// для вычисления среднескользящей добавим свежие замеры
Uint16ToString(MALongSqual);
//dtostrf(MALongSqual, 5, 1, Str);
SERIAL_OUT.write(Str[4]);
SERIAL_OUT.write(Str[3]);
SERIAL_OUT.write(Str[2]);
SERIAL_OUT.write(Str[1]);
SERIAL_OUT.write(Str[0]);
SERIAL_OUT.write(0x09);
setar писал(а):коллеги туплю, как мне float распечатать с одним знаком после запятой и уложить в 5 символов
Для чисел с плавающей точкой в форматах «e», «E» и «f» этот элемент означает число знаков после десятичной точки. Результат округляется.
setar писал(а):они в 127 упираются, почему так - не знаю
setar писал(а):это первое что я сделал и результатом явилось загрубление точности в 10 раз.
Пока pix_max не дойдет до максимального значения, дсп делать нечего, только после нормального значения pix_max начинает регулироваться shutter и все остальное. Вот поэтому нельзя выпускать pix_max выше опред. значения, тогда датчик является элементарным фотоприемником с оцифрованным значение яркости, внутр. алгоритмы не искажают данные.
Да не майтесь вы этой ерундой, все функции, кроме pix_max - всякие патентованные алгоритмы, которые меняются от ревизии к ревизии. Умрете их сводить.
Используйте датчик как фотодиод с adc.
linvinus писал(а):setar писал(а):это первое что я сделал и результатом явилось загрубление точности в 10 раз.
а какое значение shutter выбрали как константу?
linvinus писал(а):хмм, по документации это не так, там сказано что shutter всегда подстраивается так чтобы pix_max был в районе 50.
поэтому на простой фотодиод не смахивает.
2 по байту ADNS_SHUTTER_UPPER
нижний байт прыгает сильно
Так вот и удерживай pix_max на значении 45, моей функцией регулировки мощности лазера (это большая яркость в сравнении с любой засветкой), дсп ничего не останется делать, как просто выдавать данные яркости. Имеем фотоприемник с данными от 0 до 45
linvinus писал(а):тогда получается бой между лазером и выдержкой, лазер тянет к 45 а выдержка к 50.
ну ладо, у меня теория а у вас практика, так что вам виднее.
Dmitry__ писал(а):Посмотри на все графики, пока pix_max меньше половины, все другие регистры в нуле или максимуме.
Dmitry__ писал(а):Да и практически понятно, пока яркость приемлема, твой зрачок (shutter) не будет сужаться, максимальная дырка, зачем ему это делать? И так темно как у негра в попеУдерживать на уровне 45 ты сможешь только после того как яркость дойдет до этого значения (начнешь уменьшать мощность лазера). shutter даже не пикнет, пока яркость ниже волшебного значения.