Согласно техзаданию нужно получить срабатывание на канале B ОУ DA7 который работает в режиме компаратора с опорным напряжением 0.99В.
К неинвертирующему входу подключён канал А, который работает в режиме неинвертирующего усилителя, коеффициент которого нужно выставить так, чтобы на выходе получить напряжение равное или выше опорному канала B.
От пьезоэлемента через выпрямляющую схему и делитель (/2) сигнал поступает на АЦП микроконтроллера, который исходя из замера должен вычислить и выставить сопротивление верхней части обратной связи ОУ так, чтобы получить нужный коеффициент усиления канала А.
Верхняя часть (вых А -> инв. вход А) обратной связи состоит из резистора на 51КОм и цифрового потенциометра, сопротивление которого нужно узнать и которое варьируется от 0 до 100КОм с шагом в 780Ом на разряд (127 шагов возможно)
Целевой коефициент после замера на АЦП вычисляется по формуле: k = Vref/Vin, где Vref - опорное напряжение компаратора (0.99В), Vin - напряжение, замеренное на канале АЦП
Так как коефициент усиления на неинвертирующем усилителя вычисляется по формуле: k = 1+(R2/R1) и R1 у нас известно (1КОм), необходимо вычислить значение R2 исходя из целевого коефициента.
R2 = (k - 1) * R1
Получив R2 как значение верхней части усилителя, я получил общее значение сопротивления, которое состоит из параллельных резисторов один из которых известен (51КОм) и второй является потенциометром, сопротивление которого нужно задать чтобы получить нужный коеффициент усиления.
Так как формула сопротивления параллельных резисторов (одна из) выглядит так:
Rп = (R2*Rx)/(R2+Rx)
Где Rx - неизвестное сопротивление потенциометра, Rп - известное целевое сопротивление, R2 - известное значение (51КОм) , можно вывести формулу сопротивления для потенциометра:
Rx = (R2*Rп)/(R2-Rп)
Полученное значение Rx необходимо записать в цифровой потенциометр для установки коеффициента усиления. Цифровой потенциометр работает с шагом в ~780Ом, необходимо вычислить число шагов для записи в его регистр:
Steps = Rx/StepV
где Steps - нужное количество шагов, Rx полученное сопротивление, StepV - значение шага на потенциометре.
К примеру, на АЦП поступил сигнал напряжением в 0.1V. Целевой коеффициент будет равен:
k = 0.99/0.1 = 9,9
Получим целевое сопротивление верхней части обратной связи:
R2 = (9,9 - 1) * 1000 = 8900 Ом
Получим значение потенциометра исходя из цепи параллельных резисторов:
Rx = (51000 * 8900)/(51000 - 8900) = 10781 Ом
Получим значение регистра потенциометра:
Steps = 10781/780 = 14
Проверим результат:
Значение потенциометра при 14 шагах станет: 14780 = 10920 Ом Верхняя часть обратной связи усилителя будет иметь сопротивление: (5100010920)/(51000+10920) = 8994,2 Ом Коефициент усиления канала А будет равен: 1 + (8994,2/1000) = 9,9942 Выходное напряжение канала А будет равно: 9,9942 * 0,1 = 0,99942 Компаратор канала В подаст сигнал на МК и зажгётся зелёный светодиод вместе с красным (штатный режим)