Доработка металлоискателя Пират
(11-11-2025, 00:13)vako : привязка ко времени
Millis. В течении 100 миллисекунд я считываю с пина А0.

Код:
int currentValue = analogRead(INPUT_PIN); // Считываю

И потом между максимальной и минимальной я получил разность по амплитуде в течении 100.
(11-11-2025, 00:28)-vlad- : Millis. В течении 100 миллисекунд я считываю с пина А0.
Привязка должна быть к импульсу, который подаётся на затвор полевика. А тут привязка непонятно к чему.
У меня привязка к pc817.

После ОУ.

После ОУ я рассмотрел сигнал в осле и от этого прыгал.
(11-11-2025, 00:42)-vlad- : У меня привязка к pc817
Не понял, а она то каким боком в управлении участвует?
Я сейчас так попробую .[attachment=9006]

(11-11-2025, 00:36)vako : на затвор полевика
Так на затвор идет импульс 125Гц125мс. Он постоянный, как я его обработаю? А уже с выхода ОУ я вижу, как меняется амплитуда от цели и на этом я построил.
(11-11-2025, 00:49)-vlad- : Так на затвор идет импульс 125Гц125мс. Он постоянный, как я его обработаю? А уже с выхода ОУ я вижу, как меняется амплитуда от цели и на этом я построил.
Так его не надо обрабатывать к нему надо привязаться, а именно к спаду, когда закрывается транзистор. Полезный сигнал на выходе оу появляется уже после.

(11-11-2025, 00:49)-vlad- : Я сейчас так попробую
А что это даст?
vako, Привязка у меня есть к 125Гц. Но после электролита 1 мкф и после ОУ. Я же не полезу в обвязку irf740, там вообще переменка и током бьется. 1

Постоянная частота:
Код:
ICR1 = 15999;           // ЧАСТОТА
  OCR1A = 255;            // ШИРИНА ИМПУЛЬСА
Vako, я начинающий ардуинщик.

(11-11-2025, 00:59)vako : А что это даст?
В монитор порта завтра залезу, посмотрю при каком напряжении D10     начнется озвучка при этом загрублю выход с ОУ через подстроечник 5 ком ?

Реально вы мне сегодня помогли c D9,D10....... вот бы я напаял !!! У нас уже второй час ночи. Что нибудь ночью придумаю. 1
В высокое лезть не надо. Есть импульс на затвор полевика. Мне интересно, В каком месте сигнала после оу происходит чтение. Просто в программе не понятно. Считывание должно происходить относительно спада импульса на затворе, а судя по программе там этого нет, ну или я не понял логику.

В меге есть встроенный компаратор, который можно подключить к выходу оу и с помощью таймера просто измерять длительность импульса. Судя по осциллограммам даже синхронизировать ничего не надо, просто правильно подобрать порог срабатывания.
(11-11-2025, 16:24)vako : после оу
На выходе ОУ я подключил осциллограф и посмотрел как меняется сигнал. Чем ближе цель к датчику, то и меняется ширина импульса. Соответственно свой светодиод и своя озвучка при росте амплитуды.Я не строил по спаду или хвостам.

Просто после того, как сигнал инвертировался и чуть усилился на выходе tl071 видно как меняется сигнал. Я не использовал как в Пирате второй Op2 как компаратор и не использовал внутренний компаратор ардуино.

На пине А0 я измеряю амплитуду. В коде видно, если > 300 , то начинается озвучка и индикация. Я сейчас переписываю код и сделаю уже без глупых затей с D10.
Я двумя кнопками сделаю регулировку считывание на А0 . Ну скажем начну с >=280 с шагом 5.
(11-11-2025, 17:12)-vlad- : На пине А0 я измеряю амплитуду.
А когда происходит измерение? В какой момент Вы опрашиваете ацп? И зачем делать регулировку считывания? У вас считывание происходит без нормальной привязки ко времени. Попробуйте выставить какой нибудь бит порта перед считыванием, а после чтения сбросьте. Засинхронизируйтесь за него и посмотрите в каком месте сигнала это происходит.