(06-01-2023, 02:55)ivan 123 : Программа сама резонанса не находит,
И не найдёт, если прибор ток ТХ не видит.
(06-01-2023, 02:55)ivan 123 : Поставил Serial.end(); в конце сетуп
Может в самом начале попробовать.
Что интересно, у меня и serial работает(данные в терминал шлёт) и PA11, и без Serial.end();
(06-01-2023, 02:55)ivan 123 : тогда снова в ручную надо искать резонанс.
Есть вариант, надо во вкладке EEPROM_R_W найти строку Mem.F_TX[i]= 160; и вычислить значение для новой частоты по формуле TX = 72000000/((Mem.F_TX+1)*64) , для 15кГц будет где-то Mem.F_TX[i]=74
Там ещё можно и отстройку по ферриту прописать в строке Mem.Comp_Phase[i]= 0; но придётся подбирать в ручную или выводить на экран Mem.Comp_Phase после отстройки в программе. Ещё в Mem.Adjustment_Phase[i]=0; прописать подстройку VDI, там максимум +- 5 градусов, если Mem.Comp_Phase подобрано правильно.
И в принципе прибор готов к поиску)
У меня всё на breadboard, куча проводов и у одного был плохой контакт, сейчас резонанс работает как надо.
(06-01-2023, 13:45)KEN : самом начале попробовать.
Serial.end(); а что с Serial.begin(); я его не вижу ?
есть предложение - добавить еще один канал генератора на PB7 для баланса датчика, с регулировкой фазы и амплитуды, этот сигнал подать через резистор 50к и емкость 22нф на pin 3 MCP .
После заливки датчика, часто росбаланс слишко большой........, а так нажал кнопку и баланс датчика готов.
(06-01-2023, 15:26)ivan 123 : а что с Serial.begin(); я его не вижу ?
Это есть так сказать в бетта версии, надо для отладки новых алгоритмов. В текущей версии я удалил всё что связанно с Serial.
(06-01-2023, 15:26)ivan 123 : есть предложение - добавить еще один канал генератора на PB7 для баланса датчика,
Скорее всего ничего не выйдет, в этом МК нет ЦАП и синусоида синтезируется через ШИМ, если в канале ТХ это проканало (так как есть резонансные цепи), то подав такую синусоиду на вход ОУ, получим кучу импульсных помех, поэтому и нет компенсации разбаланса.
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(PC13, OUTPUT);
pinMode(PA11, OUTPUT);
pinMode(PA12, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(PC13, HIGH);
digitalWrite(PA11, HIGH);
digitalWrite(PA12, HIGH);// turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(PC13, LOW);
digitalWrite(PA11, LOW);
digitalWrite(PA12, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Вот пример на основе которого я сделал ?https://arduino.ru/forum/programmirovani...ent-353658
Там на PB7 ШИМ дает красивую синусоиду , думаю стоит попробовать. Добавьте только регулировку фазы к этому генератору каторый уже есть (PB8 ) тогда проверю, пока EEPROM в пути есть время.
(06-01-2023, 17:51)ivan 123 : Там на PB7 ШИМ дает красивую синусоиду , думаю стоит попробовать.
PB7 занят, да и вообще нет свободных выводов привязанных к свободному таймеру и не все таймеры можно использовать они завязаны на I2C и SPI делаешь там ШИМ и всё это уже не работает, надо кардинально переделывать схему и код, слишком много времени и внимания отнимет, и не факт что получиться с ШИМ синусоидой.
Новая прошивка и инструкция, изменил алгоритм отстройки грунта, убрал некоторые баги.
Алгоритм БГ новый, на грунте ещё не пробовал,от кирпича отстраивается.
Забыл про ещё один пункт меню - 10#SENS-MASK
Это весьма примечательная настройка, не встречал такой ни в одном приборе.
Этот параметр стал следствием алгоритма БГ основанного на простой вырезки сектора грунта, по сути все БГ во всех приборах делают это, но через алгоритмы оставшиеся от аналоговых приборов, там чувствительность к меди зависит от смещения БГ и многие этим пользуются при поиске. Все эти зависимости чувствительности от БГ - следствие аналогового алгоритма БГ, там просто по другому не сделать. Спрашивается - зачем все эти танцы если у тебя цифровой прибор? Но следствие цифрового алгоритма - повышенная чувствительность по краям диапазона, и это не всегда хорошо, на сложных грунтах и замусоренном месте это проблема - очень много ложняков. Пришлось искусственно занижать чуйку по краям, имитируя аналоговый прибор.
И так, какие есть маски:
Mask Trapeze - По форме похожа на трапецию, самая ходовая, в основном на ней копал.
Mask Parabola - По форме похожа на параболу, максимально похожа на аналоговый прибор, самая стабильная так как самая низкая чувствительность по краям диапазона VDI
Mask OFF - Типа маска выключена но на самом деле не совсем, но чувствительность к высоко проводящим целям самая большая.
На графике Синий-Mask Parabola, красный-Mask Trapeze, зелёный-Mask OFF.
Есть ещё мелкая неравномерность, это следствие упрощённого алгоритма расчёта магнитуды.
Но Вам лучше видно, в Квазаре так сделано, и это большое преимущество.
Standby - можно его отключить и поставить #1 ножку на землю ?
В место R2 и R3 я ставляю 300 ом на землю (прямо на LCD ) .
Тоже можно избавиться от R10, R11 и C7 7 , надо поставить R8 на ножку #7 MC34119 и в программе убрать необходимость смещения.
(07-01-2023, 16:23)KEN : надо кардинально переделывать схему
не так уж много , надо добавить 2 резистора и две емкости