P.S Для проверки только от батарейки номинал резистора R1 можно временно уменьшить до 10кОм
P.P.S. Все соединения в схеме должны быть надёжны(пропаяны), т. к. обрыв в делителе может привести к повреждению МК.
Это на случай, если схема собирается на макетке, то есть контакт, то нет…
Для измерения напряжения +50В и -50В с помощью Arduino и усилителя LM358 вам понадобится:
Усилитель LM358
Два резистора по 10 кОм
Два конденсатора по 0,1 мкФ
Два делителя напряжения, каждый из которых состоит из двух резисторов по 10 кОм
Шаги подключения:
Подключите питание к усилителю LM358, используя вход питания V+ и V-. Проверьте, что напряжение питания соответствует требованиям усилителя.
Подключите входное напряжение к входному выводу усилителя LM358. Для этого подключите напряжение +50В к неинвертирующему входу (+) и напряжение -50В к инвертирующему входу (-).
Подключите делитель напряжения к выходу усилителя LM358. Для этого подключите два резистора по 10 кОм между выходом усилителя и землей, а также два резистора по 10 кОм между выходом усилителя и питанием.
Подключите конденсаторы по 0,1 мкФ к обоим входам усилителя LM358 для снижения шума.
Подключите выход делителя напряжения к аналоговому входу Arduino.
Код для измерения напряжения:
Определите аналоговый вход, к которому подключен выход делителя напряжения.
Используйте функцию analogRead() для чтения значения напряжения на аналоговом входе.
Преобразуйте значение, прочитанное с аналогового входа, в напряжение с помощью формулы: напряжение = (значение * напряжение питания) / 1024.
Пример кода для измерения напряжения с аналогового входа Arduino:
int analogInput = A0; // определение аналогового входа
float voltage = 0; // переменная для хранения значения напряжения
void setup() {
Serial.begin(9600); // инициализация последовательного порта
}
void loop() {
int value = analogRead(analogInput); // чтение значения с аналогового входа
voltage = (value * 5.0) / 1024.0; // преобразование значения в напряжение
Serial.print("Voltage: "); // вывод значения напряжения в монитор порта
Serial.print(voltage);
Serial.println(" V");
delay(1000); // задержка для стабилизации значения
}
Обратите внимание, что в этом примере используется напряжение питания 5 В. Если вы используете другое напряжение питания, замените значение 5.0 в формуле на соответствующее значение.