PI-ARM
#31
Пересниму сейчас с мелкой целью, а то была крышка из под кастрюли, махал в районе полуметра.

https://youtu.be/EiXv0T1R2hI

Нет, с высокого тона нет. Начинается с Терминаторского рыка. Два первых зеленых нет, а с синих уже начинается рык переходящий на высокий. Я так понимаю первые 2 зеленых они должны молчать, это грань срыва что ли? И нет нет они загораются...и это хорошо, что они молчат(озвучка) это максимальная чувствительность. 1

Я там иной раз фольгой промахивался, рядом с датчиком опускал пачку сигарет. Смотрел на светодиоды, блин.
#32
(07-03-2023, 19:23)-vlad- : Два первых зеленых нет,
Так у автора задумано, возможно на грунте два первых сегмента будут помехи. Я могу сделать озвучку с первого сегмента но надо сначала проверить на грунте. Вообще напрашивается настройка прога озвучки, но это более серьёзные изменения кода, это уже к автору...
#33
Первые 2 зеленых то что молчат это хорошо.
Код ненадо менять и тратить время ваше.
Меня устраивает, что первый вариант с его озвучкой, что с вашей озвучкой.
А он забросил этот проект, так что перерисую Лай-ку на будущее с добавлением 34119, так как если придется мне делать еще раз этот мд, то что бы уже без этого модуля на 3 ножках.
Спасибо всем, кто помагал.
#34
(07-03-2023, 20:18)-vlad- : добавлением 34119
или TDA7052 = меньше элементов паять
#35
gal, Да просто 34119 на 2 приборах проверил, а с TDA или 386 лучше на макетке их настраивать, что бы на готовой Лайке лишний раз дорожки потом нерезать.
#36
(07-03-2023, 19:23)-vlad- : с мелкой целью,
надо проверить реакцию на феррит и на.... тазик (пластиковый) с соленой  водой (ст. ложка на литр). При запуске прибора держать датчик подальше от металла. Если все хорошо, то отклика быть не должно. Обычные  IB детекторы реагирут на морскую воду и растворы кислот с вди около -5*. Импульсник должен молчать, так же как и на феррит. Если есть реакция на солёную воду, то нужно увеличить основную задержку.....а тут как?
#37
(07-03-2023, 21:11)Boltyara : а тут как?
Завтра после работы вечерком ещё потестирую, а если непозно вернусь, то может и в коробку из под обуви все уложу и на улицу выскочу, там уже точно все встанет на свои места.
#38
Код:
//световая и звуковая индикация.
void showDigit()
{
   // сравниваем значения и выводим на индикацию.
    if (count_sensor == 0)
{
    if (data1 > calibr + 2 * set_size)
{
    pixels.clear();
    pixels.setPixelColor(0, pixels.Color(0,color,0));
    count_sensor = 11;
}
    else
{
    count_sensor = 0;
    pixels.clear();
}
}
   
    if (count_sensor == 1){
    if (data1 > calibr + 4 * set_size){
    pixels.clear();
    pixels.setPixelColor(1, pixels.Color(0,color,0));
    count_sensor = 12;}
    else {count_sensor = 0;
    pixels.clear();
    pixels.setPixelColor(0, pixels.Color(0,color,0));}}
   
    if (count_sensor == 2){
    if (data1 > calibr + 6 * set_size){
    pixels.clear();
    pixels.setPixelColor(2, pixels.Color(0,0,color));
    count_sensor = 13;}
    else {count_sensor = 1;
    pixels.clear();
    pixels.setPixelColor(1, pixels.Color(0,color,0));}}
   
    if (count_sensor == 3){
    if (data1 > calibr + 8 * set_size){
    pixels.clear();
    pixels.setPixelColor(3, pixels.Color(0,0,color));
    count_sensor = 14;}
    else {count_sensor = 2;
    pixels.clear();
    pixels.setPixelColor(2, pixels.Color(0,0,color));}}

    if (count_sensor == 4){
    if (data1 > calibr + 10 * set_size){
    pixels.clear();
    pixels.setPixelColor(4, pixels.Color(0,0,color));
    count_sensor = 15;}
    else {count_sensor = 3;
    pixels.clear();
    pixels.setPixelColor(3, pixels.Color(0,0,color));}}
   
    if (count_sensor == 5){
    if (data1 > calibr + 12 * set_size){
    pixels.clear();
    pixels.setPixelColor(5, pixels.Color(color,0,0));
    count_sensor = 16;}
    else {count_sensor = 4;
    pixels.clear();
    pixels.setPixelColor(4, pixels.Color(0,0,color));}}
   
    if (count_sensor == 6){
    if (data1 > calibr + 14 * set_size){
    pixels.clear();
    pixels.setPixelColor(6, pixels.Color(color,0,0));
    count_sensor = 17;}
    else {count_sensor = 5;
    pixels.clear();
    pixels.setPixelColor(5, pixels.Color(color,0,0));}}
   
    if (count_sensor == 7){
    if (data1 > calibr + 16 * set_size){
    pixels.clear();
    pixels.setPixelColor(7, pixels.Color(color,0,0));
    count_sensor = 17;}
    else {count_sensor = 6;
    pixels.clear();
    pixels.setPixelColor(6, pixels.Color(color,0,0));}}

    pixels.show();
   
    if (count_sensor == 11){count_sensor = 1;}
    if (count_sensor == 12){count_sensor = 2;}
    if (count_sensor == 13){count_sensor = 3;}
    if (count_sensor == 14){count_sensor = 4;}
    if (count_sensor == 15){count_sensor = 5;}
    if (count_sensor == 16){count_sensor = 6;}
    if (count_sensor == 17){count_sensor = 7;}

    //звуковая индикация.
    if (data1 > calibr + 6 * set_size)
     {
      int f_min = calibr + 6 * set_size;
      int f_max = calibr + 16 * set_size;
      if (data1>f_max) data1=f_max;
      int s_tone = map(data1, f_min, f_max, 120, 1000);
      tone(zummer,s_tone);       
     }   
    else noTone(zummer);
}
Вот ещё попробуйте, интересно получиться ли непрерывный звук, полной плавности не получиться, такой уж алгоритм у автора, но что-то будет.
#39
(07-03-2023, 21:11)Boltyara : так же как и на феррит.
Сейчас проверил, на феррит молчит. Даже не попискивает если вплотную.
(08-03-2023, 00:10)KEN : получиться ли непрерывный звук
Получилось, но не так как хотелось бы. Звук стал похож на... (если помните часы Montana 16 мелодий), вот что то похожее. Если приближать цель, то проскакивает (зеленый и синий) в диапазане 2 см, а потомом остальные 20 см только балаболит красный( с ужасным как то пронизующим среднее ухо писком).
Не , я вернусь к вчерашнему вашему изменению. Сейчас видео сниму и залью.

Если появится лишнее время, то поколдую с цифрами. Может получится у меня подобрать резкий переход (с нормального тона на писклявый). Ну что бы, более хриплый тон был по шкале светодиодов растянут, а только на последнем красном был бы писк...

https://youtu.be/bFE6RSsS2S0
#40
Да, надо подбирать диапазон частот, и нелинейную зависимость уровень-частота, для этого надо наличие прибора для тестов. И не могу понять почему звук всё равно прерывистый, должен быть постоянно пока цель над датчиком, не получилось.