Функция AnalogRead Возможности считывания напряжения переменного тока
Обычно, когда вы чувствуете переменное напряжение, вы получаете синусоидальную форму сигнала. Однако для источников переменного напряжения функция AnalogRead ( ) Arduino представляет только положительные значения напряжения. Так что же в основном происходит? Это пропуск половины цикла, где напряжение отрицательное. Если да, то как я могу объяснить это, когда я пытаюсь использовать значения напряжения для расчета общей электрической энергии, генерируемой источником (пьезоэлектрической пленкой) и средней. власть?
@ARJ, 👍0
1 ответ
Я предполагаю, что вы показываете напряжения, вычисленные непосредственно с помощью analogRead()
, и что вы подключили переменное напряжение непосредственно к аналоговому входу (и оно заземлено с землей Arduino).
Заземление для каждой связи/измерения напряжения/цифрового входа. Естественно, Arduino может измерять напряжения только в пределах собственного диапазона напряжения питания, то есть от 0 до 5 В для Uno. Если вы приложите отрицательное напряжение (относительно земли), вы измерите напряжение 0 В. Вы даже можете повредить микроконтроллер, если отрицательное напряжение будет слишком высоким.
Если у вас есть отрицательное и положительное напряжения, вы должны сместить сигнал на аналоговом входном контакте, чтобы результирующий сигнал оставался в диапазоне от 0 до 5 В. Это можно сделать с помощью простого делителя напряжения. Используйте два резистора с одинаковым сопротивлением (например, 5 кОм), чтобы получить новую нулевую точку при напряжении 2,5 В. Затем сигнал переменного тока будет изменяться вокруг этого значения.
Что происходит внутри микроконтроллера:
АЦП отвечает за измерение напряжения. Для этого напряжение на аналоговом входе будет сначала измерено (загружено во внутренний конденсатор), а затем пошагово сравнено с напряжениями, которые генерирует АЦП, разделяя диапазон напряжения питания на 1024 различных значения (10 бит). Снова эталон, с которым измеряется/сравнивается напряжение, является землей. Он не может генерировать отрицательные напряжения, поэтому не может их сравнивать.
- Измерение напряжения переменного тока с использованием Arduino Uno
- Отправка значения с одного Arduino на другой
- Arduino непрерывно считывает значение АЦП с помощью прерывания
- Чтение частоты ввода в цифровых выводах
- Колебания показаний датчика температуры LM35 (+- 5°C) с Arduino UNO
- Почему пассивный зуммер щелкает, а не гудит, когда установлен на ВЫСОКИЙ?
- Проблема с открытием нескольких текстовых файлов одновременно/по порядку с использованием <SD.h>
- Динамически обновить масштаб виджета Tkinter из портов Arduino с помощью python и firmata