Оглавление:
Видео: Измерения датчика тока ACS724 с помощью Arduino: 4 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:49
В этом руководстве мы поэкспериментируем с подключением датчика тока ACS724 к Arduino для измерения тока. В этом случае используется датчик тока +/- 5 А, который выдает 400 мВ / А.
Arduino Uno имеет 10-битный АЦП, поэтому хорошие вопросы: насколько точны текущие показания, которые мы можем получить, и насколько они стабильны?
Мы начнем с того, что просто подключим датчик к вольтметру и измерителю тока и сделаем аналоговые показания, чтобы увидеть, насколько хорошо работает датчик, а затем подключим его к выводу АЦП Arduino и посмотрим, насколько хорошо он работает.
Запасы
1 - Макетная плата 2 - Настольные источники питания 2 - Цифровые мультиметры1 - Датчик ACS724 +/- 5A1 - Arduino Uno1 - LM78053 - резисторы 10 Ом, 10 Вт
Шаг 1:
Схема тестирования показана на схеме. Подключение вывода Arduino 5V к шине + 5V LM7805 не является обязательным. Вы можете получить лучшие результаты с этой перемычкой, но будьте осторожны с вашей проводкой, если вы ее используете, потому что Arduino подключен к вашему компьютеру, а второй источник питания будет превышать 5 В, когда вы его поднимете, чтобы увеличить ток через датчик.
Если вы подключите блоки питания вместе, то источник питания датчика и источник питания Arduino будут иметь одну и ту же контрольную точку + 5V, и вы ожидаете более стабильных результатов.
Я сделал это без этого подключения, и я увидел более высокое показание нулевого тока на датчике тока (2,530 В вместо ожидаемых 2,500 В) и более низкое, чем ожидалось, показание АЦП в точке нулевого тока. Я получил цифровое показание АЦП от 507 до 508 без тока через датчик, для 2.500 В вы должны увидеть показание АЦП около 512. Я исправил это в программном обеспечении.
Шаг 2: Тестовые измерения
Аналоговые измерения с помощью вольтметра и амперметра показали, что датчик очень точный. При испытательных токах 0,5 А, 1,0 А и 1,5 А это было точно с точностью до милливольта.
Измерения АЦП с помощью Arduino были не такими точными. Эти измерения были ограничены 10-битным разрешением АЦП Arduino и проблемами шума (см. Видео). Из-за шума показания АЦП в худшем случае колебались до 10 или более шагов при отсутствии тока через датчик. Учитывая, что каждый шаг соответствует примерно 5 мВ, это колебание примерно 50 мВ, а с датчиком 400 мВ / ампер представляет колебание 50 мВ / 400 мВ / ампер = 125 мА! Единственный способ получить значимые показания - это снять 10 показаний подряд и затем усреднить их.
С 10-битным АЦП или 1024 возможных уровней и 5 В Vcc мы можем разрешить примерно 5/1023 ~ 5 мВ на шаг. Выход датчика выдает 400 мв / ампер. Так что в лучшем случае у нас есть разрешение 5 мВ / 400 мВ / ампер ~ 12,5 мА.
Таким образом, сочетание колебаний из-за шума и низкого разрешения означает, что мы не можем использовать этот метод для точного и последовательного измерения тока, особенно малых токов. Мы можем использовать этот метод, чтобы дать нам представление об уровне тока при более высоких токах, но он не так точен.
Шаг 3: выводы
Выводы:
-Аналоговые показания ACS724 очень точны.
-ACS724 должен очень хорошо работать с аналоговыми схемами. например, управление током источника питания с помощью аналогового контура обратной связи.
-Есть проблемы с шумом и разрешением при использовании ACS724 с 10-битным АЦП Arduino.
-Достаточно хорошо для простого контроля среднего тока в цепях с более высоким током, но недостаточно для контроля постоянного тока.
-Может потребоваться использовать внешний 12-битный или более чип АЦП для лучших результатов.
Шаг 4: Код Arduino
Вот код, который я использовал для простого измерения значения АЦП на контакте Arduino A0, и код для преобразования напряжения датчика в ток и получения среднего значения из 10 показаний. Код довольно понятен и содержит комментарии для кода преобразования и усреднения.
Рекомендуемые:
Управление двигателем постоянного тока с помощью модуля оптического датчика энкодера FC-03: 7 шагов
Управление двигателем постоянного тока с помощью модуля оптического датчика энкодера FC-03: в этом уроке мы узнаем, как подсчитывать прерывания оптического энкодера с помощью двигателя постоянного тока, OLED-дисплея и Visuino. Посмотрите видео
Модуль измерения мощности постоянного тока для Arduino своими руками: 8 шагов
Модуль измерения мощности постоянного тока для Arduino: в этом проекте мы увидим, как сделать модуль измерения мощности постоянного тока с помощью Arduino
Преобразование 35 В постоянного тока в 9 В постоянного тока с помощью регулятора напряжения 7809: 7 шагов
Преобразование 35 В постоянного тока в 9 В постоянного тока с помощью регулятора напряжения 7809: Привет друг, сегодня я собираюсь сделать схему контроллера напряжения. С помощью этой схемы мы можем преобразовать до 35 В постоянного тока в постоянное 9 В постоянного тока. В этой схеме мы будем использовать только напряжение 7809. регулятор. Приступим
Управление двигателями постоянного тока с помощью L298N с помощью микроконтроллера CloudX: 3 шага
Управление двигателями постоянного тока с помощью L298N с помощью микроконтроллера CloudX: В этом проекте мы объясним, как использовать наш H-мост L298N для увеличения и уменьшения скорости двигателя постоянного тока. H-мостовой модуль L298N можно использовать с двигателями, которые имеют напряжение от 5 до 35 В постоянного тока. Также имеется встроенный регулятор 5 В, поэтому, если ваш
Методы определения уровня воды Arduino с помощью ультразвукового датчика и датчика воды Funduino: 4 шага
Методы определения уровня воды Arduino с помощью ультразвукового датчика и датчика воды Funduino: в этом проекте я покажу вам, как создать недорогой датчик воды, используя два метода: 1. Ультразвуковой датчик (HC-SR04) 2. Датчик воды Funduino