Измерение напряжение показывает ерунду
- Войдите на сайт для отправки комментариев
Чт, 17/05/2018 - 15:42
Делаю измерение напряжения на батарее. Для тестирования собираю на макетной плате и в терминале вижу ерунду.
Ардуина на 3.3 вольта
Питание макетной платы 3.3 и 5.2 вольта
5.2 вольта идут на мосфет с мосфета на резистивный делитель, с делителя в аналоговый порт.
Снимаю информацию 20 раз с нахождением среднего:
setup pinMode(5, OUTPUT);//мосфет pinMode(A1, INPUT);//измерение loop digitalWrite(5, HIGH);//включаем мосфет //Измерение float j = 0; for (int i = 0; i<20; i++ ) { j += analogRead(A1); delay(10); } digitalWrite(5, LOW);//выключаем мосфет //Вывод j /=20; Serial.println(j);
Первый луп информация снимается корректная, каждый последующий значение падает, пока не доходит до 300 и далее всегда 300 (плюс-минус)
Мультиметр показывает, что на порту 2.6 вольт стабильно (когда мосфет включен).
Что не так?
Давайте схему и нормальный скетч (который компилируется и может исполняться).
Вот скетч и схема (на схеме справа у меня ещё TTL, я не нашёл как его нарисовать в этом редакторе)
isprite. во первых это не схема, а черт знает что. Какой у вас мосфет, какие из его выводов черные, какие красные????
Мосфеты на схеме показываются так:
А то, что вы привели как схему - это красивая картинка для детей 8-12 лет.
Ладно, проехали. Для упрощения тестирования предлагаю мосфет из схемы удалить вовсе, а а делитель напряжения поставить просто между VCC GND. Для этого два "черных" проводника мосфета на вашей схеме - нужно соединить, а красный провод мосфета - отсоелинить от ардуино.
Убрал из схемы мосфет.
Вот результат работы из терминала:
Т.е. Вы сигнал подключили к нулевому ADC, а в скетче читаете с первого. Правильно я понял?
И, кстати, строка 5 в скетче абсолютно лишняя. Не уверен, мешает ли, но то, что не помогает - точно.
Спасибо за наводку. Исправил A1 на A0. Но теперь чтение всегда выводит 1023.
isprite, и должно быть 1023. У вас референсное напряжение (1.1v) меньше входного (2.6v)на АЦП, а это грубая ошибка.
Заработало!
analogReference(DEFAULT);
Сейчас мосфет верну и ещё раз проверю.
Правда не понятно с опорным напряжением - у меня 2,6 вольт, значение 801, 801/1023=0.78, 0.78*3.3=2.58.
Почему-то везде советуют напряжение на 1.1 умножать, а у меня практически 1 к 1 выходит.
Это Вы спрашивайте у тех, кто советует.