Измеритель мощности ( амперметр и вольтметр)
- Войдите на сайт для отправки комментариев
Чт, 09/06/2016 - 22:03
Прощу помощи: хочу сделать ваттметр. Получилось своими мучениями сделать вольтмер и вывести это дело на экран, на остальное мозгов не хватает.
#include <Wire.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27, 16, 2); int analogInput = A0; // номер порта ардуино float vin = 0; // входное напряжение void setup(){ lcd.begin(); pinMode(analogInput, INPUT); lcd.print("DC VOLTMETER"); } void loop(){ // считывание аналогового значения vin = float(analogRead(analogInput))/38; //значение на входе *1.41 для измерения тока lcd.setCursor(0, 1); lcd.print("INPUT V= "); lcd.print(vin); delay(500); // время через которое идет считывание показаний }
и нашел для датчика ACS712 5A скетч, но не могу понять как его сделать чтобы показывал на экране и ватты.
Да как обычно, умножить напряжение на ток.
это я помимаю, как это в программе написать?) Я же говорю не буб бум в этом(
пишите *
Тогда сюда http://arduino.ru/forumy/ishchu-ispolnitelya
выдает ошибку
точку с запятой в стр.22
точку с запятой в стр.22
Поставил, выдал ошибку по этой строке lcd.print(average);
exit status 1
'lcd' does not name a type
глянь туд
стр.23 удалить
стр.23 удалить
Спасибо получилось, но вот данные амперметра не считываються по нулям.
Исходный код датчика, при мониторенге на компе показывает верно:
Вы цикл потеряли, в скетч из #11 вместо строки 21 вставьте строки 9-15 из скетча #12.
Вы цикл потеряли, в скетч из #11 вместо строки 21 вставьте строки 9-15 из скетча #12.
Не помогло ошибка по этой строке (int i = 0; i < 1000; i++)
И ватт нет
Araris вы гений, спасибо!!
Дорогие друзья а почему у меня вычесления не производиться: амп. не умножается на вольт= ватт?
Спасибо, я-то может и гений, а вот Вы, по-моему, даже и не пытаетесь. Так неинтересно.
Между 36-й и 37-й строкой скетча вставьте
lcd.print(
Watts
);
Спасибо, я-то может и гений, а вот Вы, по-моему, даже и не пытаетесь. Так неинтересно.
Между 36-й и 37-й строкой скетча вставьте
lcd.print(
Watts
);
В общем что получилось) Конечно с ващей помощью.
В общем пришел датчик тока на 20А изменил стороку, показания стали не верные
А ток какой, и напряжение, где меряете?
просто измерительный прибор, ток от 0 до 20 меняеться, напрежение до 30в
просто измерительный прибор, ток от 0 до 20 меняеться, напрежение до 30в
Ардуино непосредственно не может измерять ни то, ни другое.
Есть формула
angersos, а Вы понимаете, что в этой формуле откуде берется?
При замене датчика нужно соответствующим образом изменить знаменатель. Нужное значение содержится в дэйташите.
(это то, как я понял Вашу проблему. А так - MagicianT прав: нужно приводить схему включения.)
ну примерно,0185 по даташит.,2,5 напрежение
В даташите другие данные, датчик на 20А - 100мВ/А. Те 2.5В смещения, они не всегда 2.5, и ошибка будет накапливаться. Надо мерять при отключеной нагрузке, скажем в сетапе прокрутите 1000 циклов, наберите сумму и сохраните как лонг переменную, а потом в основной программе её и отнимайте.
Вот-вот, мне тоже что-то припоминается, что 185 mV/A - это для 5-Амперного датчика.
И, вообще-то желательно константы типа 0.0049 и 2.5 не набирать вручную, а вычислять на основе опорного напряжения. Особенно, если речь идет об измерительном приборе. Найти эталонный амперметр, измерить им напряжение на источнике питания (под нагрузкой) и измеренное значение занести в константы, на основе которых потом будет вычисляться (компилятором) то, что должно быть вместо 0.0049 и 2.5.
Все нормально, измерил ток тестером, немного исправил значения)
Дополню. 2.5 это половина от напряжения питания 5В, которое, как правило, не бывает ровно 5В. Соответственно, напряжение лучше вычислить, чем тупо брать 2.5. Тем более, что это довольно просто сделать из соответствующих регистров.
Для 32u4:
Сам столкнулсь с такой проблемой, когда с питания usb (4.9В) вычислялись одни значения тока, с внешнего питания (5.2В) другие на одной и той же нагрузке.
tmr и куда это вставить?)
Дополню. 2.5 это половина от напряжения питания 5В, которое, как правило, не бывает ровно 5В. Соответственно, напряжение лучше вычислить, чем тупо брать 2.5. Тем более, что это довольно просто сделать из соответствующих регистров.
Собственно, Вы не берете из регистров, а проводите измерение. Но погрешность встроенного источника опорного напряжения - те же единицы процентов, что обычно бывают и у напряженгия источника питания. Так что мы получаем лишь воспроизводимость результатов при смене источника питания, ни никак не избавление от систематической ошибки.
Теперь ошибка у нас будет привязана не к источнику питания, а к кристаллу контроллера: при одном и том же скетче и одном и том же источнике питания разные кристаллы будут показывать различные результаты измерения одного и того же напряжения.
далее по смыслу
ну меня пока устраивает моя система)