Arduino Uno читает аналоговый сигнал 24 В постоянного тока
Похоже, вашей первой задачей будет определить, какой тип сигнализации используется, поэтому вам нужно начать с «осциллографа для бедного человека» в виде микроконтроллера с АЦП. Вы захотите использовать его для измерения напряжения на проводах датчика и тока через них; если провода используются как для питания, так и для связи, вполне вероятно, что он обменивается данными путем увеличения и уменьшения величины потребляемого им тока, и в этом случае наиболее полезная информация будет получена путем измерения формы волны.
Как вы заметили, Arduino может измерять напряжение от 0 до 5 вольт на своих аналоговых портах. Чтобы измерить более широкий диапазон, до 24 вольт, нам нужен делитель напряжения, например:
смоделировать эту схему — схема, созданная с использованием CircuitLab
Основная операция резисторного делителя проста. На мгновение проигнорируйте «Radc» и предположите, что «IN» подключен к источнику напряжения. Ток будет течь от IN через Ra и Rb к земле; величина этого тока зависит от напряжения на входе. Мы можем рассчитать это с i = Vin / (Ra + Rb)
. Напряжение, при котором встречаются Ra и Rb, будет зависеть от протекающего тока и значения Rb — это Vdiv = i * Rb
.
Зная это, мы можем построить делитель для любого отношения, которое мы хотим, просто определив относительные значения Ra и Rb. Но как насчет абсолютных значений? В принципе, мы можем выбрать любую величину, какую захотим, но на практике есть несколько важных соображений:
- Вполне вероятно, что «In» не является истинным источником напряжения, способным подавать неограниченный ток, но вместо этого имеет свое собственное внутреннее сопротивление, которое мы называем выходным сопротивлением. Если мы получим от него достаточно энергии, это приведет к провисанию входа, что приведет к неточным результатам и потенциально повлияет на остальную цепь.
- Рассеяние большого тока через наш делитель с помощью небольших резисторов также приводит к бесполезной трате энергии и образованию большого количества нежелательного тепла.
- Вполне вероятно, что наше измерительное устройство тоже не идеально. Наши уравнения выше предполагают, что АЦП не оказывает никакой нагрузки на резисторный делитель, но это не правильно. Различные типы ввода будут загружать то, что они измеряют, в разной степени; вот где приходит Radc: это представление нагрузки, которую АЦП оказывает на схему, а не физический дискретный компонент. В случае Arduino мы можем предположить, что он находится в диапазоне от 10 до 100 килоом, в зависимости от таких вещей, как частота дискретизации.
Точка 1 выше означает, что мы хотим сделать сопротивление нашего делителя резистора — сумму обоих значений резистора — намного выше, чем выходное сопротивление цепи, которую мы измеряем, поэтому мы не влияем на наши измерения. Точка 3 выше означает, что мы хотим, чтобы сопротивление, которое видит наш АЦП, в данном случае Ra, было намного меньше, чем его собственное входное сопротивление, поэтому сопротивление АЦП не влияет на измерения. Если возможно, тогда мы хотим выбрать значение между — сопротивление для Ra + Rb, которое больше, скажем, в 100 раз превышает выходной импеданс входной цепи, и сопротивление для Ra, которое меньше, скажем, 1/100 АЦП входное сопротивление.
Но что, если эти два требования противоречат друг другу? Вот где приходит операционный усилитель.
Идеальный операционный усилитель (операционный усилитель) имеет бесконечный входной импеданс — он не нарушает измеряемый сигнал вообще — и нулевой выходной импеданс — его выход является идеальным источником напряжения. Реальные операционные усилители отличаются от этого идеала в большей или меньшей степени, но для наших целей это достаточно близко к истине.
Мы можем использовать эти свойства для улучшения нашей измерительной схемы, поместив операционный усилитель между резисторным делителем и входом АЦП, например, так:
смоделировать эту схему
Теперь наш резисторный делитель «видит» очень высокий выходной импеданс от входа Opamp, а наш АЦП «видит» очень низкий входной импеданс от выхода Opamp — лучшее из обоих миров!
Но какой операционный усилитель нам нужен? Ну, у нас есть несколько требований:
- Мы хотим иметь возможность питать его от 5В нашего Arduino
- Это должно быть в легкой паяльной упаковке
- Вход и выход должны пройти весь путь от земли до напряжения питания — это называется «рельсы на рейку IO»
- Это должно быть легко доступно и доступно
- Он должен быть способен обрабатывать сигналы до максимальной скорости нашего АЦП — около 10-20 кГц.
- Его входное сопротивление должно быть достаточно высоким
Быстрый поиск по цифровому ключу показывает MCP6241 , который поддерживает входные напряжения до 0,3 В ниже отрицательной шины и до 0,3 В выше положительной шины (5 В), а выходные напряжения в пределах 35 милливольт от отрицательной и положительной шины , что легко достаточно хорошо для наших целей. Контакты питания этого операционного усилителя могут быть подключены напрямую к GND и VCC на Arduino, а остальные подключены, как показано на рисунке выше.
Как насчет резисторного делителя? Что ж, в техническом описании MCP6241 указано, что его входное сопротивление составляет 10 13 Ом — абсурдные 100 тераом или сто миллионов мегом. Это высокий показатель даже для операционного усилителя, и это означает, что мы можем использовать резисторный делитель, примерно такой большой, как вам хотелось бы — или вы так думаете.
Последний недостаток в выборе значения резисторного делителя состоит в том, что мы не живем в идеальном мире, когда речь идет о построении нашей схемы. Печатные платы не являются идеальными изоляторами, как и макеты; поверхностное загрязнение также повлияет на сопротивление, и если вы прикоснетесь к своей цепи, вы можете гарантировать, что сопротивление через вашу кожу будет намного ниже, чем тераом. Все это означает, что мы должны выбрать значение делителя резистора, которое намного ниже теоретического максимума — хорошее эмпирическое правило находится в диапазоне от 100 кОм до 1 мегаом.
Мы хотим разделить наш вход так, чтобы 24 вольт были примерно 5 вольт, что означает, что нам нужно соотношение 5/24 = ~ 20%. Предположим, мы установили Rb на 100 кОм; это означает, что Ra должен быть в 4 раза больше, или около 400 килоом. 402 кОм — это легко доступное значение, которое дает нам окончательный коэффициент деления 100 / (100 + 402) = 19,9%, то есть 24 вольт будут равны 4,78 вольт.
Все вышеперечисленное направлено на то, чтобы вы могли легко измерить сигнал 24 В на вашем микроконтроллере, не сильно мешая входу. Если вы хотите измерить ток вместо этого, ваша жизнь намного проще: определите вероятный диапазон токов, которые вы хотите измерить, и выберите резистор, который создаст небольшое, но измеримое падение напряжения на этих уровнях. С вашей системой 24 вольт, все до 1 вольт может быть приемлемым. Затем поместите этот резистор между массой и отрицательным проводом вашего датчика и измерьте напряжение на нем напрямую с помощью вашего АЦП или через операционный усилитель без делителя резистора, если хотите.
Датчики тока — Hi-Lab.ru
В системе Arduino Mega Server используется два вида датчиков тока — SCT-013 (до 100А) и ТА12 (до 5А). Оба вида датчиков бесконтактные и обеспечивают гальваническую развязку с измеряемыми цепями электрического тока. Датчики рассчитаны на разный максимальный ток и это нужно учитывать при их подключении. Система может работать и с другими датчиками тока, но на практике тестировались именно эти модели.
Подключение датчиков производится «пропусканием» провода в специально предназначенное для этого отверстие в датчике. Внимание! Пропускать нужно только один провод, а не два! И лучше, чтобы это был «фазный», а не «нейтральный» провод.
Внимание! Здесь работа проходит с сетевым напряжением, опасным для жизни. Если вы в чём-нибудь неуверенны и не являетесь специалистом в электрике, то лучше ничего не делайте самостоятельно. Найдите профессионального электронщика и закажите ему изготовление и подключение этого блока.
Резисторы, отмеченные звёздочкой, требуют подстройки. Во время настройки блока будьте осторожны и убедитесь, что не подаёте на выводы микроконтроллера сигналы с амплитудой большей, чем напряжения питания этого контроллера. Сама процедура настройки выходит за рамки этого краткого руководства, подробнее об этом вы можете узнать из описания проекта Power Monitor.
Резистор R4 нужен в тех случаях, когда на аналоговых входах контроллера присутствует аномальное положительное смещение. Если в вашем конкретном случае смещения нет, то и резистор R4 не нужен.
Это важно! Микроконтроллеры имеют строго определённое напряжение питания, например, Arduino Mega питается от 5-и вольт, а Arduino Due — от 3,3 вольт и превышение этого напряжения на выводах контроллера может вывести его из строя.
Датчик обеспечивает гальваническую развязку с питающей сетью, но всё равно, при работе с датчиком рекомендуется соблюдать повышенную осторожность.
Power Monitor и код в системе Arduino Mega Server поддерживают до 15 каналов измерения силы тока (на Arduino Mega) и до 11 каналов (на Arduino Due). На рисунке выше представлена схема одного такого канала. Если вам нужно большее количество каналов, то вам нужно изготовить соответствующее их количество и подключить соответствующее количество датчиков.
Обратите внимание. Система Arduino Mega Server непрерывно развивается и в код проекта постоянно вносятся изменения и улучшения, поэтому, описание и документация может не соответствовать вашей конкретной версии системы. Последняя правка этой страницы относится к 0.14 версии системы.
Модуль датчика тока ACS712 30A
Модуль датчика тока RKP-ACS712-30A для измерения постоянного и переменного тока до 30 А.
Измерение и контроль протекающего тока являются принципиальным требованием для широкого круга приложений, включая схемы защиты от перегрузки по току, зарядные устройства, импульсные источники питания, программируемые источники тока и пр.
Работа датчика тока ACS712 основана на эффекте Холла.
Датчик тока ACS712 состоит из датчика Холла и медного проводника. Протекающий через медный проводник ток создает магнитное поле, которое воспринимается элементом Холла. Магнитное поле линейно зависит от силы тока. ACS712 датчик построен на эффекте Холла и имеет линейную зависимость измеряемого тока и выходного сигнального напряжения.
- Датчика тока ACS712 интегрирован в малогабаритный корпус SOIC8, имеет гальваническую развязку с напряжением пробоя 2,1 кВ (RMS).
- Arduino датчик RKP-ACS712-30A питается от постоянного напряжения 5 В и потребляет совсем небольшой ток 11 мА.
- Модуль способен выдерживать большие перегрузки по измеряемому току.
- Датчик тока ACS712 прост в подключении и надежен в эксплуатации.
Посмотреть/скачать DataSheet микросхемы ACS712 (формат PDF размер 1 МБ)
Характеристики
Максимальный измеряемый ток: 30 А
Чувствительность: 66 мВ/А
Максимальная частота 50 кГц
Температурный диапазон: -40°С .. +85°С
Ток потребления не превышает: 11 мА
Сопротивление токовой шины 1.2 мОм
Напряжение питания: +5,0 В
Гальваническая развязка, пробивное напряжение: 2.1 кВ
Размеры: 31 x 13 мм
Подключение датчика тока ACS712 к плате Arduino
VCC – питание (опорное напряжение 5В)
GND – земля
Вблизи датчика тока RKP-ACS712-30A не рекомендуется устанавливать мощные магниты, соленоиды, реле, электромоторы и прочие предметы, излучающие магнитное поле, так как его работа основана на эффекте Холла и магнитное поле может вносить погрешность и искажать показания сенсора.
Модуль ACS712 измеряет токи до 30 А может быть отправлен вам всего за $1
Обычно, если я покупаю электрический прибор большой мощности, я дважды проверяю его энергопотребление, когда это возможно, а когда нет, например, кабель напрямую подключен к прибору или сила тока слишком высока, я использую цифровые электрические клещи. Оба метода являются довольно удобным, поскольку вам не нужно отрезать провод для измерения тока и определения расхода электроэнергии, но они не позволяют собирать данные, поскольку нет подключаются к сети. Ранее на этой неделе, я сталкивался в проектах с использованием ESP8266 сетевой монитор энергии, для измерения тока питающей сети при установке солнечной панели, для электросчетчика или для газового счетчика. Они используют фото датчик для измерения энергопотребления своего электрического счетчика, который работает, но это может быть проблематичным, если счетчик находится на улице, датчик тока iSnail использует эффект холла совсем как токоизмерительные клещи, но вместо того, чтобы показывать текущий ток на дисплее, датчик выдает от 0 до 5 В, то есть вы можете подключить его на микро-контроллер для обработки данных, как вам нравится. Это мило, но в то время как токоизмерительные клещи стоят около $10, 25 А версия iSnail идет за $40, так что я занялся поиском альтернатив. Я нашел дешевый датчик тока, модуль на основе Allegro Systems ACS712, поддерживающий силу тока 5 А, 20 А или 30 А, легко работающий с аналоговыми входами платы Arduino, 5 А версия продается на eBay всего за $1 для 5А, а версии 20 А & 30 А обычно продают менее чем за $2.
Аппаратные характеристики довольно простые:
- ACS712 линейный датчик тока IC на основе эффекта холла (техническое описание)
- 2-клемы для нагрузки DC или AC
- 3-контактный разъем, контакты VCC (5 В), GND и OUT
- Входной ток и чувствительность (шкала измерения)
- -/+ 5 А – 185 мВ/А
- -/+ 20 А – 100 мВ/А
- -/+ 30 А – 66 мВ/А
- Размеры – 31 x 13 мм
Поскольку IC сенсор может измерять в обоих направлениях, через контакт OUT проходит напряжение VCC/2 (2.5 В), когда нет тока и других значений, которые могут быть меньше или больше, чем напряжение VCC/2 в зависимости от направления тока сообщит фактический ток.
Измерение силы постоянного тока (DC) делается очень легко, нужно просто взять одно измерение, вычесть напряжение VCC/2 и разделим на чувствительность. Альтернативный ток измерить немного сложнее, поскольку вам придется производить различные измерения, чтобы найти RMS значение как описано на сайте Henry’s bench. Поскольку плата была доступна в течение нескольких лет, есть много документации в сети для Arduino. Один человек (Julian) сделал очень хороший ролик, показывающий как она работает.
Датчик тока ACS712 также может быть сопряжен с ESP8266, но поскольку беспроводной чип имеет только аналоговый вход от 0 до 1 В, выходное напряжение ACS712 должно быть уменьшено, что приведет к понижению точности, если не использовать через внешний ADC чип. ESP32 не имеет этой проблемы так как его аналоговый вход поддерживает диапазон от 0 ло 4 В, хотя я понимаю что ESP32 имеет несколько собственных, встроенных функций для контроля энергии.
Выражаем свою благодарность источнику с которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.
sensors — Измерение дифференциального напряжения с помощью Arduino UNO
Выход этого датчика является промышленным стандартом «4-20 мА» (известный как токовая петля ). Это означает, что текущий выход из провода +S
изменяется в пределах от 4 мА до 20 мА в зависимости от давления. Вам нужно преобразовать этот ток в напряжение, чтобы Arduino мог его пробовать.
Обратите внимание, что ваша попытка схемы полностью назад. Вы должны подключить контакт +24 В до +24 В на источнике питания. GND должен быть подключен к GND на источнике питания, а также GND на Arduino.
Теперь для сигнала. Да, резистор — это самый простой способ преобразования тока в напряжение. Просто передайте ток через резистор на землю, и на нем будет сброшено напряжение.
Согласно закону Ома, V = IR. Или, чтобы повернуть его, R = V /I.
Максимальный ток составляет 20 мА (0.02 А), а максимальное напряжение — 5 В. Таким образом, вы можете поместить эти значения в Закон Ома и получить сопротивление:
- R = V /I = 5 /0,02 = 250 Ом.
Теперь резисторы 250 Ом не являются общими, но являются 220 Ом. Так что это даст нам?
- V = IR = 0,02 * 220 = 4,4 В
Perfect. А на нижнем (4 мА) конце диапазона?
- V = IR = 0,004 * 220 = 0,88 В.
Итак, с резистором 220 Ом вы получили бы напряжение от 0,88 до 4,4 В на Arduino.
(Примечание: рекомендованное техническое описание 100 Ом было бы более подходящим для 3,3 В Arduino — оно давало бы между 0,4 В и 2 В).
Для безопасности я бы также включил небольшой встроенный резистор для ограничения тока и стабилитрон 5.1V. Если резистор 220 Ом должен выйти из строя или отключиться, вы получите полный 24V (или где-то там) через штырь A0 Arduino. Он ограничен 20 мА, поэтому может и не быть проблемой, но вы не можете быть уверены, поэтому лучше добавить, чтобы зажать напряжение до 5,1 В. В конце концов, стабилитрон дешевле нового Arduino.
И уточнить — схема:
имитировать эту схему — Схема, созданная с использованием CircuitLab
ВОЛЬТ-АМПЕР-ENERGY-МЕТР НА ARDUINO. ЧАСТЬ 4. УСИЛИТЕЛЬ — Мои статьи — Каталог статей
Одной из проблем предыдущей реализации вольт-ампер-метра было высокое тепловыделение на шунте. Как уже было сказано ранее, сопротивление шунта можно существенно уменьшить, но для того, чтобы измеряемое напряжения на шунте покрывало весь входной диапазон АЦП, понадобится усилитель на ОУ (иначе точность измерения так же уменьшится).
На схеме выше шунт имеет сопротивление 10мОм, а усилитель на ОУ имеет коэффициент усиления 11 (1 + R5/R6). При токе 10А падение напряжения составит 10мОм * 10А = 100мВ, а усилитель доведет его до 1100мВ (что нам и нужно). При этом выделяемая мощность составит 100мВ * 10А = 1Вт.
На самом деле, все конечно не совсем просто. ОУ (в особенности такой ширпотреб как LM358) не идеальны. Например, резистор R8 нужен для компенсации одной из проблем — смещения 0 (о чем то же я уже писал). Этот эффект присущ и АЦП и ОУ. В данном случае компенсируется исключительно отрицательное смещение путем добавки малой части питающего напряжения к измеряемому. Если совокупное смещение окажется положительным (то есть при измерении 0, будет не нулевой выход АЦП), то придется вычесть смещение программно (железно можно бы было использовать отрицательный источник напряжения, но это накладно).
Не будут учтены ряд других проблем — например, нелинейность ОУ, дрейф характеристик в зависимости от температуры. В идеале нужно использовать специальный инструментальный ОУ, но это уже будет совсем другая история. Мы ограничимся тем, что скомпенсируем подстроечным резистором R8 отрицательное смещение нуля по показаниям прибора (на токе низком токе 10-20 ма). Точное сопротивление шунта/коэффициент усиления (достаточно изменить один любой параметр) надо подбирать на относительно высоком токе (от 1А). Подбор имеет смысл проделать пару раз. За счет подбора параметров, незначительные отклонения сопротивлений R5, R6 будут не важны.
Следует заметить, что несмотря на простоту, есть вполне конкретное требование к ОУ — он должен работать при однополярном питании при входных напряжениях близких к 0 (ряд ОУ требует двуполярного питания в этом случае). Для ширпотребных LM358 и аналогов это выполняется.
Так же следует оговорить случай высоких токов, низких сопротивлений шунта и высоких коэффициентов усиления, соответственно. Например, уменьшим шунт до 1мОм, получим на нем 10мВ при 10А, поставим усилитель на 110 и получим те же 1100мВ на входе АЦП. Все вроде хорошо, но шунт 1мОм еще надо найти, а потом подключить его так, чтобы соединения (пайка) не влияли на показания. При этом все нелинейности, дрейфы, шумы у нас усилятся на 110, и шанс на стабильные показания будет очень небольшой. Более того, даже при усилении 11, как на схеме выше, на безпаечном макете отладить устройство очень-очень сложно (много неидеальных соединений). Что касается высоких токов, то тот же шунт 1мОм при токе 50А обеспечит падение 50мВ, а усилитель на 22 обеспечит нам полный размах в 1100мВ, однако мощность на шунте составит уже 50мВ * 50А = 2,5Вт. При этом помним, что шунт на 1мОм надо поискать и правильно смонтировать. Начиная с какого-то момента может оказаться интересно использование датчиков, основанных на магнитных эффектах — они кроме измерения высоких токов могут предполагать неразрывность цепи и измерение тока в двух направлениях. Но это опять же будет существенно другое устройство.
Arduino, AVR и просто интересные проекты: Система мониторинга потребления электричества
Сегодня мы построим систему, которая позволит измерять текущую потребляемую электрическую мощность в доме/квартире.Особенностью этой системы будет то, что для измерения не потребуется никакого вмешательства в силовую электрическую сеть (неинвазивный метод).
Более того, сделаем эту систему беспроводной (необязательно, но очень просто и полезно).
Использовать будем вот такой датчик:
Этот датчик просто одевается на силовой провод (обязательно на один провод!) и имеет токовый выход, уровень сигнала с которого прямо пропорционален протекующему через силовой провод току. Датчик позволяет измерить ток до 100А.
Как и в предыдущей статье, мы будем использвать комплектующие серии Grove. Нам понадобится:
На этом можно ограничиться. Но если захочется сделать беспроводную передачу данных, дополнительно потребуется:
Аппаратная конфигурация
Сначала необходимо разобраться с подключением датчика тока. Выход датчика является токовым и напрямую подключить его к ардуине нельзя.
Подключение такого датчика (и многих подобных) можно осуществить по схеме:
В схеме нет ничего сложного. Номиналы резисторов — 33 Ом (тот, что параллельно датчику тока — самый левый на схеме) и 10 кОм (одинаковые — образуют делитель напряжения). Почему выбрана именно такая схема и обоснование номиналов можно прочитать в первоисточнике. Чтобы нам было удобно — разместим все элементы на модуле протоплаты. Сначала удобнее распаять разъем для подключения датчика, а затем произвести монтаж остальных навесных элементов. Получается вот такая конструкция:У нас в хозяйстве не нашлось резистора в 33 Ом, но нашлись резисторы по 100 Ом — воспользовались законом Ома (поставили три резистора в параллель и получили необходимое сопротивление).
После этого несложного подготовительного этапа можно приступать к сборке нашего «прибора».
Подключаем в следующем порядке:
- Выход датчика тока — на вход A0
- Модуль кнопки — D5
- RF-передатчик — D2
- OLED-дисплей — к шине IIC (SDA — A4, SCL — A5).
«Прибор» в сборе (на фото хорошо видно расположение разъемов, к которым производится подключение):
Программная часть
Основная составляющая кода — библиотеки для работы соответствующих устройств (OLED-дисплей, библиотека VirtualWire для беспроводного модуля), основу же для работы датчика тока мы возьмем из проекта OpenEnergyMonitor (библиотека EmonLib).В функции setup() мы производим инициализацию всех подключенных элементов (дисплей, датчик, RF-передатчик) и в три шага проводим калибровку нашего прибора:
- С помощью дисплея просим пользователя подключить датчик (пока датчик на кабель не одеваем) и после этого — нажать на кнопку
- Прибор производит измерение «нулевых» значений (которые на самом деле — ненулевые), высчитывает среднее значение и запоминает его как поправочное значение (переменная delta)
- Предлагаем пользователю подключить датчик на провод и подтвердить свое действие нажатием на кнопку.
Датчик лучше подключить после стабилизатора питания |
Таким образом, в функции setup() у нас происходит первичная настройка прибора.
В основной функции (loop()) у нас в каждом цикле производится замер среднеквадратичного значения тока (переменная sIrms), вычисляется значение потребляемой мощности Pcur (по формуле Pcur = sIrms*220) и происходит формирование максимального и минимального значения потребления (переменные Pmax и Pmin, соответственно).
Наиболее внимательные из вас могут сказать, что использование в формуле значения текущего напряжения (220) — не совсем хорошо, ведь напряжение может отличаться от «стандартного» и правильнее было бы его тоже измерять. Это правильное замечание, но мы будем считать, что напряжение соотвествует ГОСТ и его колебания находятся в пределах +5% и просто смиримся с тем, что погрешность нашего прибора будет примерно на этом же уровне. Так же для большей точности рекомендуем использовать этот прибор после стабилизатора напряжения.
В каждом цикле производится вывод этих параметров на дисплей.
Дополнительно в каждом цикле происходит отправка значения потребляемой мощности через RF-передатчик.
Архив с полным кодом скетча (mon_pow_oled_rf) и всеми необходимыми библиотеками находится в файле, ссылка на который приведена в конце статьи.
Если вы сделали все правильно, то на дисплее (после процесса калибровки) отобразится примерно следующее:
Первый параметр — текущая потребляемая мощность (в кВт), далее следует среднеквадратичное значение тока (в А), последние два параметра — максимальное и минимальное значение потребляемой мощности.
Как видите, такой прибор просто сделать и результат его работы виден сразу.
Беспроводная передача данных
Наш прибор уже отлично функционирует, но для того, чтобы видеть значения потребляемой мощности, к нему необходимо подойти и посмотреть, что же отображается на дисплее.
Но мы не зря сразу подключили к нашему устройству RF-передатчик.
Теперь мы реализуем с помощью второй ардуинки приемник, который бы принимал отправленные значения и выводил его в терминал (вы потом самостоятельно можете модифицировать этот код и выводить значения, например, на другой дисплей).
Для этого на беспаечной макетке разместим ардуино nano и к его пину D2 подключим выход с RF-приемника (не забываем о том, что к модулю приемника надо еще и питание подвести — общий и +5В):
Если у вас нет комплектующих, что мы используем в статье — можете использовать те аналоги, что есть под рукой (например вместо ардуино nano и беспаечной макетки можно использовать любую полноформатную ардуино и просто проводками сделать аналогичное подключение RF-приемника).
Теперь необходимо в ардуино nano залить скетч mon_reciver и открыть монитор порта, чтобы убедиться, что данные успешно принимаются:
На этом мы закончим с нашей системой мониторинга потребления электричества.
Примечание: большая часть из приведенного списка комплектующих, что мы использовали сегодня, входят в следующие наборы:
Как измерить ток с помощью Arduino
Введение для манекена
что такое электрический ток
Проще говоря, электрический ток — это поток электронов (отрицательная частица) или ионов (положительно / отрицательно заряженная частица) из одной точки материи в другую (от металла до воды или любых других материалов, даже в свободное пространство).
Эти электроны / ионы перемещаются силой, называемой напряжением (как разность напряжения / потенциала между двумя точками вещества).Чем больше напряжение, тем слабее сопротивление вещества, тем больший ток вы получите.
Постоянный и переменный ток
Постоянный ток, называемый DC, — это ток, который очень мало изменяется с точки зрения объема потока за время. Вы можете генерировать постоянный ток, используя батарею, приложенную к резистору (батарея и резистор имеют очень стабильное значение, то есть не сильно изменяются).
Переменный ток, называемый переменным током, — это ток, который изменяется во времени.Вы всегда используете переменный ток, когда подключаете зарядное устройство к электрической розетке.
Один важный переменный ток, если его значение отложено во времени, имеет форму синусоидальной волны. Этот тип тока важен, потому что он в основном используется в наших приборах и, в целом, в нашей жизни.
форма многих видов электрического тока в зависимости от времени3 метода измерения силы тока
Резистивный датчик тока Шунтирующий метод
Этот метод был самым первым способом измерения силы тока.Этот метод использует силу закона Ома, который гласит: ток через резистор развивает напряжение.
Это напряжение можно рассчитать по следующей простой формуле: Vshunt = Rshunt * I.
Концепция датчика тока с шунтирующим резисторомВ этом методе, по крайней мере, для высокого тока, должен использоваться неиндуктивный резистор, потому что импульсный ток вырабатывает импульс напряжения, который может нарушить аналоговый вход, используемый в микроконтроллере или операционном усилителе.
Реальная модель датчика тока шунтирующего резистора при большом токеДатчик с гальванически развязанным трансформатором тока, метод
В прошлом, когда вам нужно было «преобразовать» переменный ток в постоянный, чтобы можно было измерить ток с помощью микроконтроллера, вы использовали трансформатор переменного тока.
По сути, это тороидальная индуктивность, в которую вы вставляете провод, по которому течет ток, который вы хотите измерить. Он стал трансформатором, который забирает часть основного тока в соответствии с соотношением числа витков тороидальной индуктивности к числу витков основного электрического провода.
В приведенном ниже случае количество витков основного токового провода равно 1, а витков тороидальной индуктивности — 12.
Например, если основной ток составляет 120 ампер переменного тока, ток на тороидальном выходе будет 10 ампер переменного тока.
Весь ток, который вы снимаете с главной цепи, будет потрачен впустую / вычтен из основного тока.
Принцип действия трансформатора тока для определения переменного электрического тока Трансформатор датчика переменного тока как сделать самому Как превратить трансформатор тока в трансформатор напряжения с помощью резистора Пример коммерческих трансформаторов тока, установленных на печатной платеМетод индуктивного датчика тока на эффекте Холла
«В 1879 году Эдвин Холл исследовал взаимодействие между магнитным полем и электрическим током и открыл эффект Холла, когда работал над докторской степенью в Университете Джона Хопкинса».
Когда электрическое / магнитное поле применяется к протекающему току, его направление отклоняется от прямого пути. Это может создать дифференциальный потенциал / напряжение, которое вы можете измерить как прямую зависимость между током и напряжением.
Принцип эффекта Холла. Взаимодействие между текущими электронами и магнитным полем.Как измерить ток с помощью платы Arduino
Плата Arduino имеет как минимум аналого-цифровой преобразователь, который «преобразует» аналоговый сигнал в цифровое число, независимо от того, какой датчик используется.Вы должны позаботиться об уровнях напряжения между выходом аналогового датчика и входом AtoD coverter. Некоторые платы Arduino, такие как UNO, имеют шину 5 вольт, поэтому максимальное выходное напряжение вашего датчика не должно превышать 5 вольт. Плата Arduino, оснащенная микроконтроллером ARM, имеет шину 3,3 В, поэтому максимальное выходное напряжение вашего датчика не должно превышать 3,3 В. Если ваш датчик передает значение своего сигнала по цифровой шине, такой как i2c или SPI, у вас возникнут проблемы с выходным напряжением датчика.
Метод простого шунтирующего резистора
Этот метод — самый первый способ измерения силы тока. Этот метод использует силу закона Ома, который гласит: ток через резистор развивает напряжение.
Вы можете рассчитать это напряжение по этой простой формуле Vshunt = Rshunt * I.
Например, если мне нужно измерить ток полной шкалы 1 А с помощью платы Arduino UNO, и я использую 5 В в качестве эталона преобразователя AtoD, мне нужен резистор:
Rshunt = Vshunt / I
в этом примере Rshunt будет 5V / 1A = 5 Ом
Вы должны проверить максимальную мощность, разрешенную вашим шунтирующим резистором.В этом примере рассеиваемая мощность составит 5 В * 1 А = 5 Вт. Я предлагаю использовать резистор номинальной мощностью не менее 10 Вт.
Шунтирующий резистор, подключенный к входу преобразователя Arduino наподобие AtoD. Датчик тока с шунтирующим резистором в электрической цепи — низкая стоимость для Arduino Сильноточный шунтирующий резистор большой мощности Как отфильтровать датчик шунтирующего резистора Схема усилителя считывания тока одинарного дифференциала нижнего плечаПодключение по Кельвину для шунтирующего тока
Когда ток становится высоким, мы должны использовать соединение Кельвина.Это соединение является просто дублированием соединения, как вы можете видеть из следующих изображений. Ошибка более низкого соединения из-за сопротивления следа печатной платы.
Этот тип подключения называется также «четырехпроводным подключением».
Дифференциальный и одиночный сенсорный усилитель тока
разница между дифференциальным и одиночным усилителем считывания токаИзмерение тока на стороне высокого и низкого уровня
Самый простой и недорогой способ измерения тока с помощью шунта — это использовать схему низкого напряжения.Этот метод вносит ошибку в путь тока из-за некоторого нежелательного сопротивления на его пути. Если вам нужно одновременно точно измерить напряжение и ток, это не лучший метод.
A — установка низкой стороны — B — установка высокой стороны Пример измерения тока на стороне высокого напряжения с дифференциальным усилителемМикросхема для измерения тока с последовательным шунтирующим резистором
есть много микросхем, которые могут быть напрямую подключены и использоваться с аналоговым входом платы Arduino.Ниже приведены некоторые примеры.
Вы должны выбрать, какие параметры важны для вашего проекта:
- Высокая скорость
- Высокая точность / точность
- Низкая стоимость
- Какое максимальное напряжение на шине у вас
- Какой максимальный ток вы должны измерить
- Однонаправленный или двунаправленный ток (последний раз использовался для измерения батареи) Микросхема
Max471 представляет собой двунаправленный дифференциальный усилитель измерения тока на стороне высокого напряжения со встроенным шунтирующим резистором (нет необходимости использовать внешний резистор) и очень низким током питания до 100 мкА.Вы можете контролировать как заряд, так и разряд аккумулятора. Максимальный входной ток составляет +/- 3 ампер. Выход — это аналоговый сигнал, который можно измерить с помощью аналогового входа Arduino.
Вы можете купить это перейдя по ссылке ниже:
купить модуль датчика тока MAX471 +/- 3 ампер для Arduino
купить модуль датчика тока MAX471 +/- 3 ампер для монитора высокого тока ArduinoLT6100 с резистивным шунтом tecnique TSC101 усилитель датчика тока стороны высокого напряжения INA138 Сторона высокого напряжения Недорогой усилитель датчика тока Усилитель двунаправленного сверхточного датчика тока INA190 INA301 высокоскоростной усилитель датчика тока 550 кГц с предупреждением о пороге INA185 высокоскоростной двунаправленный усилитель с аналоговым выходом 350 кГцМетод изолированного трансформатора только переменного тока
Вы должны использовать этот тип датчика тока, когда вам нужно быть в безопасности и изолировать его от источника переменного тока высокого напряжения.
Вход АЦП Arduino работает с напряжением постоянного тока, вместо этого переменный ток, преобразованный датчиком, является переменным, и поэтому напрямую несовместим.
Необходимо подать напряжение смещения датчика трансформатора тока. Это напряжение смещения будет составлять половину полного диапазона входного напряжения АЦП.
В случае платы Arduino UNO с опорным сигналом АЦП 5 Вольт, ваше смещение должно быть 2,5 В.
Для платы на базе Arduino ARM с опорным значением АЦП 3.3 В, напряжение смещения должно быть 1,65 В.
Электрическая схема для трансформатора датчика тока, используемого с платой, подобной Arduino Как рассчитать адаптер датчика тока трансформатора для Arduino UNO Практический пример подключения датчика трансформатора тока. Вы можете купить модуль Arduino, перейдя по ссылке ниже:
Модуль трансформатора переменного тока для платы типа Arduino
Аналоговый метод Холла с гальванической развязкой переменного / постоянного тока
Есть несколько интегральных схем с датчиком Холла для использования в приложениях для измерения гальванически развязанного тока, которые можно использовать напрямую с микроконтроллером Arduino, например платой.
С помощью этих микросхем вы можете напрямую измерять постоянный или переменный ток и измерять значение с помощью аналогового входа АЦП от платы микроконтроллера, подобной Arduino.
Вы можете напрямую измерять гальванически развязанный переменный ток в безопасном режиме или коммутируемый ток.
ACS773 гальванически развязанный высокоскоростной датчик тока на эффекте Холла — принцип работыШироко используемый датчик на эффекте Холла в сообществе Arduino — это модуль ACS712, в состав которого входит микросхема от Allegro Microsystems, хорошо известного бренда.
Вы можете купить данный модуль по хорошей цене и у проверенного продавца перейдя по ссылке ниже:
ACS712 Датчик тока на эффекте Холла для измерения постоянного и переменного тока с гальванической развязкой
Датчик тока на эффекте Холла ACS712 для Arduino как плата микроконтроллераВы можете купить модуль эффекта Холла Pololu, перейдя по ссылке ниже:
ACHS7121 датчик тока двунаправленный +/- 10 А
Аналоговый модуль датчика тока Pololu ACSH7221 для ArduinoМетод резистивного шунтирования цифровой шины
Существуют некоторые усилители считывания тока, которые обеспечивают текущее значение непосредственно в цифровом формате через цифровую передачу через i2c или SPI.Эти фишки полезны, потому что у вас уже есть преобразованное значение без необходимости производить какие-либо вычисления.
Они оснащены преобразователем AtoD, и вам не нужно использовать аналоговый вход Arduino.
Эти микросхемы могут измерять даже напряжение и рассчитывать потребляемую мощность.
Чтобы использовать эти чипы с Arduino, вы должны использовать совместимую библиотеку.
INA219 усилитель датчика тока высокого напряжения с цифровой шиной i2c и разрешением 12 бит.INA219 может измерять ток и напряжение на шине и рассчитывать потребляемую вами мощность.Adafruit представила этот чип раньше и предоставила хорошо известную библиотеку для Arduino.
Вы можете найти учебник и библиотеку прямо на Adafruit или перейти по ссылке ниже:
INA219 Библиотека и руководство Arduino
Вы можете купить этот коммутационный модуль, готовый для Arduino, прямо у Adafruit, перейдя по ссылке ниже:
Купить INA219 ток +/- 3 А и датчик напряжения Макс. Коммутационная плата 26 В для Arduino
INA226 — это микросхема Ti, которая может измерять ток и напряжение с разрешением 16 бит и передавать все измеренные значения по шине i2c прямо на вашу плату Arduino без необходимости использования аналогового входа.
Перед использованием этого датчика тока необходимо установить библиотеку INA226 Arduino в среде Arduino IDE. Вы можете найти множество библиотек, перейдя по ссылке ниже:
Библиотеки GitHub для датчика тока INA226 Arduino
Вбиблиотеках Arduino IDE этот драйвер есть в своем списке. Вы должны выбрать эту библиотеку из Инструменты -> Управление библиотеками и найти INA226.
Датчик тока INA226 с передачей данных по шине i2c для Arduino — принцип работыВы можете купить готовый модуль коммутационной платы, перейдя по ссылке ниже:
купить модуль прорыва датчика тока INA226 для Arduino
INA228 сверхточный 20-битный усилитель датчика тока цифровой шины i2c с высокой стороной тока INA229 сверхточный 20-битный SPI цифровой шинный усилитель датчика тока высокой стороны INA293 высокое напряжение до 110 В на входе высокая скорость до 1.Усилитель считывания тока 3 МГц МикросхемаINA3221 — это усилитель с тройным датчиком тока / напряжения, который предоставляет вашему Arduino готовые меры, которые вы можете получить от шины i2c. Эта микросхема полезна в системе BMS, когда у вас последовательно соединены 3 батареи.
Принцип работы INA3221Для использования этого модуля вам необходимо установить библиотеку Arduino. Вы можете найти его, перейдя по ссылке ниже:
INA3221 Библиотеки Arduino
Вы можете купить 3-канальный модуль усилителя считывания тока для Arduino с шиной i2c чипа Ti INA3221, перейдя по ссылке ниже:
Трехканальный датчик тока INA3221 для Arduino
У этого разрыва все 3 канала являются общими, это означает, что вы не можете использовать 3 канала в плавающей настройке.Вы можете увидеть принципиальную схему ниже.
Трехканальный датчик тока INA3221 для коммутационной платы ArduinoINA3221 — как использовать и подключить Плата коммутационной схемы INA3221Дифференциал Метод шунтирования на стороне высокого давления
Когда вам нужно одновременно точно измерить ток и напряжение питания, вы должны использовать дифференциальный усилитель. Если вы хотите сделать свой усилитель считывания тока высокой стороны по нулям, используйте информацию, предоставленную ранее. Используйте усилитель с низким смещением, высокоточные резисторы и попробуйте сами и получите опыт.
Вы можете найти информацию в этом TI pdf:
Использование операционного усилителя для измерения тока на стороне высокого напряжения
Конструкция цепи измерения тока на стороне высокого давления
несколько примеров дифференциального усилителя считывания тока Do It Yourself Дифференциальный усилитель на стороне высокого давления, используемый для контроля тока драйвера H для двигателей — 2 ветви Дифференциальный усилитель на стороне высокого давления, используемый для контроля тока драйвера H для двигателей Монитор тока блока питания постоянного тока с использованием дешевого усилителя LM358 Двунаправленное измерение тока с одним выходомINA169 имеет аналоговый выход, совместимый с аналоговым входом Arduino.Этот усилитель считывания тока может работать с напряжением на шине до 60 В, потребляя всего 60 мкА. Вы можете купить модуль прорыва для Arduino, перейдя по ссылке ниже:
Купите коммутационную плату INA169 для датчика тока Arduino
.Коммутационная плата SparkFun дает вам возможность выбрать максимальный ток для измерения. Вы должны установить на эту плату шунтирующий резистор RS и резистор полной шкалы RL. Вы найдете всю информацию в его техническом описании, которое вы можете найти по следующей ссылке:
Лист данных INA169
купить INA169 SparkFun аналоговый модуль выхода датчика тока для Arduino, сколько времени стоит эта статья?
Это время, которое я потратил, чтобы подумать, исследовать и записать это содержание.Надеюсь, вы найдете полезную информацию.
23 окт 2020-4 ч.
24 окт 2020-6 часов
Чтобы оплатить хостинг сайта, я являюсь аффилированным лицом Amazon и должен огласить следующее предложение: «In qualità di Affiliato Amazon io risvo un guadagno dagli acquisti idonei». Я выбираю рекламировать только товары хорошего качества и проверенного продавца. Вам не будут добавлены дополнительные комиссии к вашей покупке. Я надеюсь, вы сочтете это хорошим сервисом.
Ссылки и источники
Что такое электрический ток? по Википедии
Трансформатор электрического тока по Википедии
Как работает эффект Холла, Википедия
Принципиальная схема датчика высокого напряжения до 400 В
TI как проектировать с усилителями считывания тока
Прецизионный датчик тока от ES components
Усилители для систем управления батареями HEV / EV от Power Electronic Tips
Амперметр Arduino— как измерить постоянный ток с помощью Arduino?
Амперметр — это прибор, используемый для измерения тока в цепи, который измеряется в амперах.В цифровом амперметре мы измеряем напряжение на шунтирующем сопротивлении, подключенном последовательно к нагрузке; следовательно, ток через нагрузку и шунтирующий резистор одинаков. Амперметр подключается последовательно с нагрузкой, а вольтметр подключается к нагрузке. Потому что ток в цепи всегда один и тот же последовательно, а напряжение — параллельно.
Шунтирующий резистор должен иметь очень низкое сопротивление, то есть на нем не должно падать значительного напряжения.Поскольку фактический ток нагрузки меняется, если последовательно добавляется дополнительное сопротивление.
Амперметр Arduino с использованием последовательного монитора
В цепи амперметра постоянного тока Arduino аналоговый вход A0 и GND подключены к двум клеммам шунтирующего резистора R. Взяв разность напряжений между входом A0 и GND, мы можем получить напряжение на сопротивлении R. напряжения, измеренного на сопротивлении шунта, мы вычисляем ток в цепи, применяя Закон Ома, Падение напряжения на резисторе, V = IR, Затем ток, I = V / R Тогда ток в цепи равен напряжению на сопротивление шунта, разделенное на известное значение сопротивления шунта.Код — серийный дисплей
поплавок Vacross, Iamp = 0; const int Shunt_Res = 100; void setup () { Серийный . Начало (9600); } void loop () { Vacross = analogRead (A0); Вакросс = (Вакросс * 5,0) / 1023,0; Iamp = (Vacross * 1000) / Shunt_Res; Серийный .print ("Current ="); Серийный .print (Iamp); Серийный номер .println («мА»); задержка (1000); }
Амперметр с ЖК-дисплеем
На схеме показано, как измеряется ток через светодиод с помощью амперметра постоянного тока Arduino.Светодиод, шунтирующий резистор 100 Ом и резистор 1 кОм включены последовательно, поэтому ток через них всегда имеет одинаковое значение. Тогда можно рассчитать, что ток через светодиод — это падение напряжения на шунтирующем сопротивлении 100 Ом, деленное на значение сопротивления шунта 100. I = Vacross / 100 Код — ЖК-дисплей
#include < LiquidCrystal .h> float Vacross, Iamp = 0; const int Shunt_Res = 100; LiquidCrystal дисплей (12, 11, 5, 4, 3, 2); void setup () { ЖКbegin (16, 2); } void loop () { Vacross = analogRead (A0); Вакросс = (Вакросс * 5,0) / 1023,0; Iamp = (Vacross * 1000) / Shunt_Res; lcd.setCursor (8, 0); lcd.print ("Текущий ="); lcd.print (Iamp); lcd.print («мА»); задержка (1000); }
Разрешение измеренного значения тока можно регулировать, изменяя номинал шунтирующего резистора. Для измерения нагрузок с низким сопротивлением, то есть с большим током, значение шунтирующего резистора может быть выбрано низким.И если сопротивление нагрузки высокое, означает небольшой ток, то требуется шунтирующий резистор с более высоким сопротивлением, чтобы получить минимальное падение напряжения для измерения. Регулируя этот диапазон измерения, прибор может измерять ток в широком диапазоне ампер. Максимальное входное напряжение вывода Arduino составляет 5 В. Следует учитывать, что падение напряжения на выводе аналогового входа никогда не превышает 5 В.
В приведенных выше схемах вы можете обнаружить, что напряжение на аналоговом входе A0 и GND всегда будет ниже 5 В для внешнего источника питания 9 В.Потому что значение напряжения более 4 В однозначно падает на резисторе 1 кОм и светодиоде. Следовательно, напряжение на A0 не падает выше 5 В. В целях безопасности к резистору можно добавить дополнительный стабилитрон на 5 В для обхода любого напряжения выше 5 В. Даже при том, что не рекомендуется падать напряжение 5 В на шунте, потому что падение на нем всегда должно быть как можно меньше. То есть он не вызывает никакого сопротивления или падения напряжения в цепи. Также примите во внимание номинальную мощность резистора, чтобы ток в цепи не превышал его максимальный номинальный ток.
Измерение тока регистратора данных Arduino
Турбины, которые я делал, довольно маленькие и поэтому имеют ограниченную мощность. До сих пор использовался цифровой мультиметр на 10 А, так что это будет верхний предел диапазона, который мне понадобится. При разрешении АЦП Arduino от 0 до 1023 это даст мне шаг примерно в 10 мА.
Казалось, есть два возможных метода преобразования тока в диапазон 0-5 В для АЦП Arduino.
- Измерение падения напряжения на шунтирующем резисторе последовательно с проводкой к батарее.Я стремился минимизировать сопротивление в цепи, чтобы шунтирующий резистор был небольшим. Это означало бы, что разность напряжений должна быть усилена, чтобы обеспечить полный диапазон АЦП Arduino. Я также хотел максимально изолировать Arduino от цепи зарядки, и для этого потребовалось бы прямая связь.
- Датчик измерения тока на эффекте Холла. Это даст дополнительное преимущество в виде полной изоляции цепи зарядки турбины от Arduino. Казалось, что есть несколько доступных опций, но после того, как компоненты для поверхностного монтажа были отброшены (слишком малы для моей паяльной способности) продукты, предназначенные для больших токов.
В конце концов, я решил попробовать датчик на эффекте Холла с операционным усилителем Rail-to-Rail для увеличения сигнала. до 5В. Операционный усилитель Rail-to-Rail имеет постоянное усиление почти во всем диапазоне 0-5 В, что позволяет максимальное разрешение на АЦП. Основные используемые компоненты:
Полная принципиальная схема:
- Подстроечный резистор (P1) позволяет регулировать усиление усилителя. Коэффициент усиления определяется как R2 / (R1 + P1) что в данном случае дает диапазон от 33 до 1.5 в зависимости от значения P1.
- Подстроечный потенциометр (p2) на делителе напряжения позволяет регулировать положение нулевого тока.
Калибровка
На практике довольно просто начать сбор с АЦП, отрегулируйте коэффициент усиления до подходящего диапазона с помощью пропустить через датчик испытательный ток постоянного тока, а затем отрегулировать потенциометр, чтобы ток не протекал, чтобы показания АЦП находятся в верхней части диапазона (например, ~ 1000). Чтобы проверить линейность выходного сигнала, я пропустил через датчик различные токи и построил соответствующий АЦП. показания при максимальном усилении.Калибровку можно выполнить, сняв несколько показаний и введя их в таблицу и используя уравнение линии тренда или просто вычисляя уравнение линии через два известные токи на обоих концах шкалы.
- Одна вещь, которая меня поразила изначально, заключалась в том, что я забыл, что ток не ровный, а выпрямленный. (в данном случае однофазный). Пиковый ток будет √2 = 1,4 раза больше среднего тока, поэтому диапазон в приведенный выше случай будет ограничен 3.6 / √2 = 2,5 А. Я ожидал бы, что трехфазный генератор будет намного более плавным. выход.
- Показания АЦП со временем и при использовании менялись. Это была небольшая сумма и более очевидна, если выигрыш был высоким. Я попытался пропустить через датчик эффекта Холла обратный ток, и это вернуло нулевую точку к ней. исходное положение. Это было скорее досадой, чем серьезной неточностью, так как регистратор указывал бы на небольшой ток. и мощность вместо нуля. Я попытался настроить потенциометр P2 на ноль выхода, но это слишком грубо, чтобы отрегулируйте точно.В конце концов, я периодически менял программную калибровку, чтобы сбросить нулевое положение.
- Измеряемый ток является выпрямленным переменным, а не плавным постоянным. Программное обеспечение Arduino должно измерять напряжение несколько раз за каждый цикл, чтобы правильно рассчитать среднее значение.
с Arduino
Мониторинг протекания тока в устройстве с помощью устройства с питанием от сети — это просто сложная задача.Поскольку непрерывный мониторинг потока тока с помощью цепи создает изоляцию тока в целевом устройстве, поэтому нам нужно измерять ток, не влияя на целевое устройство.
Мы измеряем ток в цепи для расчета нескольких спецификаций, для разработчика электроники важно измерять и регистрировать текущий уровень по времени, иногда мультиметр с точностью измерения тока помогает нам измерить то же самое. . Если вы ищете схему датчика тока сети с регистрацией данных, то эта статья поможет вам лучше.
Популярным и простым методом измерения тока является измерение тока на эффекте Холла.
Что такое эффект Холла?
Когда проводник с током помещался в магнитное поле, генерировалось напряжение, пропорциональное полю. Это известно как эффект Холла.
Датчик тока на эффекте Холла ACS712
ACS712 от Allegro предоставляет точные решения для измерения переменного или постоянного тока, которые подходят для промышленных, коммерческих и коммуникационных систем.Комплектация устройства позволяет легко реализовать его заказчику. Типичные приложения включают управление двигателем, обнаружение и управление нагрузкой, импульсные источники питания и защиту от перегрузки по току. Устройство не предназначено для автомобильного применения. Устройство состоит из точной, линейной цепи Холла с малым смещением и медным проводящим каналом, расположенным вблизи поверхности кристалла.
Приложенный ток, протекающий через этот медный проводящий путь, создает магнитное поле, которое ИС Холла преобразует в пропорциональное напряжение.Точность устройства оптимизируется за счет непосредственной близости магнитного сигнала к датчику Холла. Точное, пропорциональное напряжение обеспечивается стабилизированной прерывателем BiCMOS Hall IC с низким смещением, которая запрограммирована на точность (acs712-datasheet).
Характеристики
▪ Тракт аналогового сигнала с низким уровнем шума
▪ Полоса пропускания устройства устанавливается с помощью нового вывода ФИЛЬТР
▪ Время нарастания выходного сигнала 5 мкс в ответ на ступенчатый входной ток
▪ Полоса пропускания 80 кГц
▪ Общая ошибка выхода 1.5% при TA = 25 ° C
▪ Компактный, низкопрофильный корпус SOIC8
▪ Внутреннее сопротивление проводника 1,2 мОм
▪ Минимальное напряжение изоляции 2,1 кВ (среднекв.
▪ Выходная чувствительность от 66 до 185 мВ / А.
▪ Выходное напряжение пропорционально переменному или постоянному току.
Блок-схема ACS 712
Как это работает?
Здесь микросхема датчика тока ACS712 размещена в коммутационной плате и подключается к целевой нагрузке считывания тока и микроконтроллеру.Датчик определяет ток, протекающий через контакты IP + и IP- ( Resistance Current Conductor ), он создает эффект Холла, а затем пропорциональное выходное напряжение, снимаемое с контакта 7 (VIOUT) ACS712. Его можно напрямую подавать на микроконтроллеры. Аналоговый входной вывод после фильтров.
Усилитель дифференциального тока
Эта конфигурация увеличивает коэффициент усиления до 610 мВ / А. Для выхода переменного тока эта схема дифференциального усилителя помогает обеспечить установившееся состояние Vout.Это типичная схема приложения из таблицы данных.
Взаимодействие Arduino и ACS712-Hookup
Согласно примечаниям по применению, датчик тока холла подключен к целевой нагрузке, а выходной сигнал подключен к хорошо известному Arduino A0 (аналоговый входной контакт 0). Этот разрыв датчика потребляет питание от источника питания Arduino (+5 и GND). После завершения настройки загрузите следующий код Arduino для измерения текущего потока в нагрузку.
Код Arduino для измерения постоянного тока
void setup () { Серийный .begin (9600); } void loop () { среднее значение с плавающей запятой = 0; for (int i = 0; i <1000; i ++) { среднее = среднее + (0,0264 * analogRead (A0) -13,51) / 1000; // Режим 5A, если режим 20A или 30A, необходимо изменить эту формулу на //(.19 * analogRead (A0) -25) для режима 20А и //(.044 * analogRead (A0) -3.78) для режима 30A задержка (1); } Серийный .println (средний); }
Код Arduino для измерения переменного тока
#define CURRENT_SENSOR A0 // Определить аналоговый входной контакт, к которому подключен датчик floatampitude_current; // Плавающий ток амплитуды float effective_value; // Плавающий эффективный ток установка void () { Серийный .begin (9600); pins_init (); } пустой цикл () { int sensor_max; sensor_max = getMaxValue (); Серийный номер .print ("sensor_max ="); Серийный .println (sensor_max); // VCC на интерфейсе Arduino датчика составляет 5 В ampitude_current = (float) (sensor_max-512) / 1024 * 5/185 * 1000000; // для режима 5A вам нужно изменить это на режим 20 A и 30A; эффективное_значение = амплитудный_ток / 1,414; // для минимального тока = 1/1024 * 5/185 * 1000000/1.414 = 18,7 (мА) // Только синусоидальный переменный ток Serial .println («Амплитуда тока (в мА)»); Серийный номер .println (ampitude_current, 1); // Только одно число после десятичной точки Serial .println («Действующее значение тока (в мА)»); Серийный номер .println (эффективное_значение, 1); } void pins_init () { pinMode (CURRENT_SENSOR, INPUT); } / * Функция: выборка для 1000 мс и получение максимального значения с вывода S * / интервал getMaxValue () { int sensorValue; // значение, считываемое с датчика int sensorMax = 0; uint32_t start_time = миллис (); while ((millis () - start_time) <1000) // выборка для 1000 мс { sensorValue = analogRead (CURRENT_SENSOR); если (sensorValue> sensorMax) { / * записываем максимальное значение датчика * / sensorMax = sensorValue; } } датчик возврата Макс; }
Предупреждение: нескольких миллиампер достаточно, чтобы повредить человеку. Будьте осторожны при измерении силы тока.
Построение плоттера IV на основе Arduino Nano — Измерение тока с помощью Arduino
ЗаконОма не требует токового шунта.
Создание плоттера для анализа крови на основе Arduino Nano — содержание
Arduino Nano имеет восемь аналого-цифровых преобразователей (АЦП) для измерения напряжения, но ничего специально для измерения тока.
Конечно, в этом нет необходимости.
Вольтметр и известное сопротивление — это все, что нужно для измерения тока.
Любая транзисторная схема включает резисторы для ограничения тока через устройство. Поскольку сопротивления известны, все, что вам нужно измерить, — это напряжения. Примените небольшую математику с помощью закона Ома к известным сопротивлениям и измеренным напряжениям, и вы получите ток.
ЗаконОма гласит, что произведение тока и сопротивления дает напряжение.
\ [E = I \ times R \]Где:
- $ E $ — напряжение в вольтах
- $ I $ — ток в амперах
- $ R $ — сопротивление в Ом
На странице Википедии V используется для обозначения напряжения.Я узнал закон Ома так давно, что они все еще использовали E (для «электродвижущей силы»). Тогда мы действительно измеряли ее в вольтах, мы просто использовали символ E в уравнениях.
Вы можете заметить, что закон Ома, как указано, говорит вам напряжение, заданные ток и сопротивление. Ну, это просто математика. Если вы пережили алгебру в средней школе, значит, вы знаете, как переставить такое простое уравнение, чтобы выделить любую желаемую переменную.
Нам нужен ток из напряжения и сопротивления, поэтому мы можем переформулировать закон Ома следующим образом:
\ [I = \ frac {E} {R} \]Схема оригинальной, простой версии трассировщика ИВ выглядела так:
Схема трассирующего устройства с одним переходом |
---|
Мне нужно было напряжение на V1 (напряжение смещения) и ток через базу транзистора.
R2 включен последовательно с базой Q1, поэтому ток через R2 и ток через базу Q1 должны быть одинаковыми.
Напряжение на R2 — это просто разница между V1 и V2, поэтому ток через базу можно рассчитать по следующему уравнению:
\ [I_ {Base} = I_ {R2} = \ frac {V1-V2} {R2} \]Если я расширю схему, чтобы измерить все необходимые напряжения и токи для двухпереходного датчика IV, схема будет выглядеть так:
Схема трассирующего устройства с двумя переходами |
---|
Точка 5 В не измеряется.Arduino использует источник питания 5 В в качестве эталона для АЦП. Измерение 5 В всегда будет возвращать 5 В, потому что они по определению одинаковы.
Дополнительная схема приводит к этому уравнению для тока коллектора Q1:
\ [I_ {C} = I_ {R3} = \ frac {5-V3} {R3} \]Программа Arduino фактически измеряет только V1, V2 и V3 и отправляет их на ПК. Программа для ПК имеет значения резисторов и выполняет все вычисления.
Значения, которые я использовал для резисторов, были косвенно продиктованы частотой широтно-импульсной модуляции, которую я использую для генерации напряжения смещения.
Я использовал 100 Ом для R1, потому что выходы Arduino не могут передавать большие токи. При 5 В и при полностью разряженном C1 выход ШИМ должен будет выдавать максимум 50 мА. Это строго выше указанных пределов ATMega 328P, но импульсы очень короткие, когда C1 пустой, поэтому общая энергия достаточно мала, чтобы не причинить никакого вреда.
Я выбрал C1 на глаз (большой, но не слишком большой), затем проверил, что сформированная им частота среза и R1 намного ниже, чем сигнал ШИМ 10 кГц.Частота среза 159 Гц всего на 6 октав ниже ШИМ-сигнала 10 кГц. Фильтр примерно вдвое уменьшает высоту импульса для каждой октавы, поэтому он имеет промежуточное ослабление частоты ШИМ около 18 дБ. Он ослабляет импульсы с частотой 10 кГц примерно до 1/10 их первоначальной высоты.
Из R1 следует R2. R2 должен быть намного больше, чем R1, иначе напряжение смещения не приблизится к максимуму 5 В. Я выбрал R2 равным 1000 Ом — это в десять раз больше R1. Это сохраняет нагрузку на R1 достаточно низкой, чтобы напряжение смещения доходило до 4.5В при максимальном рабочем цикле.
R3 — это просто дубликат R2 по той же причине, что у меня в руках были резисторы 1 кОм, и я не мог придумать конкретную причину, по которой резистор коллектора мог бы иметь другое значение.
Итак, вот оно. Как измерить ток с помощью Arduino Nano и почему я выбрал значения компонентов, которые использовал в трассировщике IV.
Да, рассуждения о законе Ома — старая шляпа для любого, кто изучал электронику.
Я полагаю, однако, что любой, кто создаст копию этого трассировщика IV, будет новичком, ищущим простую в сборке схему.Я включил предысторию, потому что считаю, что не объяснять новичкам — плохая услуга. «Построй это. Ой! Оно работает! Почему?» Мое объяснение может быть не лучшим, но, по крайней мере, в нем есть ключевые слова, которые можно использовать для поиска лучших описаний.
Создание плоттера для анализа крови на основе Arduino Nano — содержание
20a_current_sensor_sku_sen0214-DFRobot
- ДОМ
- СООБЩЕСТВО
- ФОРУМ
- БЛОГ
- ОБРАЗОВАНИЕ
-
Контроллер
- DFR0010 Arduino Nano 328
- DFR0136 Сервоконтроллер Flyduino-A 12
- DFR0225 Romeo V2-Все в одном контроллере R3
- Arduino_Common_Controller_Selection_Guide
- DFR0182 Беспроводной геймпад V2.0
- DFR0100 Комплект для начинающих DFRduino для Arduino V3
- DFR0267 Блуно
- DFR0282 Жук
- DFR0283 Мечтательный клен V1.0
- DFR0296 Блуно Нано
- DFR0302 MiniQ 2WD Plus
- DFR0304 Беспроводной геймпад BLE V2
- DFR0305 RoMeo BLE
- DFR0351 Romeo BLE mini V2.0
- DFR0306 Блуно Мега 1280
- DFR0321 Узел Wido-WIFI IoT
- DFR0323 Блуно Мега 2560
- DFR0329 Блуно М3
- DFR0339 Жук Блуно
- DFR0343 Контроллер с низким энергопотреблением UHex
- DFR0355 SIM808 с материнской платой Leonardo
- DFR0392 DFRduino M0 материнская плата, совместимая с Arduino
- DFR0398 Контроллер роботов Romeo BLE Quad
- DFR0416 Bluno M0 Материнская плата
- DFR0575 Жук ESP32
- DFR0133 X-Доска
- DFR0162 X-Board V2
- DFR0428 3.5-дюймовый сенсорный TFT-экран для Raspberry Pi
- DFR0494 Raspberry Pi ШАПКА ИБП
- DFR0514 DFR0603 IIC 16X2 RGB LCD KeyPad HAT V1.0
- DFR0524 5.5 HDMI OLED-дисплей с емкостным сенсорным экраном V2.0
- DFR0550 5-дюймовый TFT-дисплей с сенсорным экраном V1.0
- DFR0591 модуль дисплея raspberry pi e-ink V1.0
- DFR0592 Драйвер двигателя постоянного тока HAT
- DFR0604 HAT расширения ввода-вывода для Pi zero V1.0
- DFR0566 Шляпа расширения ввода-вывода для Raspberry Pi
- DFR0528 Шляпа ИБП для Raspberry Pi Zero
- DFR0331 Romeo для контроллера Edison
- DFR0453 DFRobot CurieNano — мини-плата Genuino Arduino 101
- TEL0110 CurieCore Intel® Curie Neuron Module
- DFR0478 Микроконтроллер FireBeetle ESP32 IOT (V3.0) с поддержкой Wi-Fi и Bluetooth
- DFR0483 FireBeetle Covers-Gravity I O Expansion Shield
- FireBeetle Covers-24 × 8 светодиодная матрица
- TEL0121 FireBeetle Covers-LoRa Radio 433 МГц
- TEL0122 FireBeetle Covers-LoRa Radio 915 МГц
- TEL0125 FireBeetle охватывает LoRa Radio 868MHz
- DFR0489 FireBeetle ESP8266 Микроконтроллер IOT
- DFR0492 FireBeetle Board-328P с BLE4.1
- DFR0498 FireBeetle Covers-Camera & Audio Media Board
- DFR0507 FireBeetle Covers-OLED12864 Дисплей
- DFR0508 FireBeetle Covers-Двигатель постоянного тока и шаговый драйвер
- DFR0511 FireBeetle Covers-ePaper Черно-белый дисплейный модуль
- DFR0531 FireBeetle Covers-ePaper Черно-белый и красный дисплейный модуль
- DFR0536 Плата расширения геймпада с микробитами
- DFR0548 Плата расширения микробитового драйвера
- ROB0148 micro: Maqueen для micro: bit
- ROB0150 Microbit Круглая плата расширения для светодиодов RGB
- MBT0005 micro IO-BOX
- SEN0159 Датчик CO2
- DFR0049 DFRobot Датчик газа
- TOY0058 Датчик атмосферного давления
- SEN0220 Инфракрасный датчик CO2 0-50000ppm
- SEN0219 Гравитационный аналоговый инфракрасный датчик CO2 для Arduino
- SEN0226 Датчик барометра Gravity I2C BMP280
- SEN0231 Датчик гравитации HCHO
- SEN0251 Gravity BMP280 Датчики атмосферного давления
- SEN0132 Датчик угарного газа MQ7
- SEN0032 Трехосный акселерометр — ADXL345
- DFR0143 Трехосевой акселерометр MMA7361
- Трехосный акселерометр серии FXLN83XX
- SEN0072 CMPS09 — Магнитный компас с компенсацией наклона
- SEN0073 9 степеней свободы — бритва IMU
- DFR0188 Flymaple V1.1
- SEN0224 Трехосевой акселерометр Gravity I2C — LIS2DH
- SEN0140 Датчик IMU с 10 степенями свободы, версия 2.0
- SEN0250 Gravity BMI160 6-осевой инерционный датчик движения
- SEN0253 Gravity BNO055 + BMP280 интеллектуальный 10DOF AHRS
- SEN0001 URM37 V5.0 Ультразвуковой датчик
- SEN0002 URM04 V2.0
- SEN0004 SRF01 Ультразвуковой датчик
- SEN0005 SRF02 Ультразвуковой датчик
- SEN0006 SRF05 Ультразвуковой датчик
- SEN0007 SRF08 Ультразвуковой датчик
- SEN0008 SRF10 Ультразвуковой датчик
- SEN0149 URM06-RS485 Ультразвуковой
- SEN0150 URM06-UART Ультразвуковой
- SEN0151 URM06-PULSE Ультразвуковой
- SEN0152 URM06-ANALOG Ультразвуковой
- SEN0153 Ультразвуковой датчик URM07-UART
- SEN0246 URM08-RS485 Водонепроницаемый гидролокатор-дальномер
- SEN0304 Ультразвуковой датчик URM09 (Gravity-I2C) (V1.0)
- SEN0304 Ультразвуковой датчик URM09 (Gravity-I2C) (V1.0)
- SEN0300 Водонепроницаемый ультразвуковой датчик ULS
- SEN0301 Водонепроницаемый ультразвуковой датчик ULA
- SEN0307 URM09 Аналог ультразвукового датчика силы тяжести
- SEN0311 A02YYUW Водонепроницаемый ультразвуковой датчик
- SEN0312 ME007YS Водонепроницаемый ультразвуковой датчик
- SEN0313 A01NYUB Водонепроницаемый ультразвуковой датчик
- DFR0066 SHT1x Датчик влажности и температуры
- DFR0067 DHT11 Датчик температуры и влажности
- SEN0137 DHT22 Модуль температуры и влажности
- DFR0023 Линейный датчик температуры DFRobot LM35
- DFR0024 Gravity DS18B20 Датчик температуры, совместимый с Arduino V2
- DFR0024 Gravity DS18B20 Датчик температуры, совместимый с Arduino V2
- SEN0114 Датчик влажности
- Датчик температуры TOY0045 TMP100
- TOY0054 SI7021 Датчик температуры и влажности
- SEN0206 Датчик инфракрасного термометра MLX
- SEN0227 SHT20 Водонепроницаемый датчик температуры и влажности I2C
- SEN0236 Gravity I2C BME280 Датчик окружающей среды Температура, влажность, барометр
- SEN0248 Gravity I2C BME680 Датчик окружающей среды VOC, температура, влажность, барометр
- DFR0558 Цифровой высокотемпературный датчик силы тяжести типа К
- SEN0308 Водонепроницаемый емкостный датчик влажности почвы
- SEN0019 Регулируемый переключатель инфракрасного датчика
- SEN0042 DFRobot Инфракрасный датчик прорыва
- SEN0143 SHARP GP2Y0A41SK0F ИК-датчик рейнджера 4-30 см
- SEN0013 Sharp GP2Y0A02YK ИК-датчик рейнджера 150 см
- SEN0014 Sharp GP2Y0A21 Датчик расстояния 10-80 см
- SEN0085 Sharp GP2Y0A710K Датчик расстояния 100-550 см
- Модуль цифрового ИК-приемника DFR0094
- DFR0095 Модуль цифрового ИК-передатчика
- SEN0018 Цифровой инфракрасный датчик движения
- DFR0107 ИК-комплект
- SEN0264 TS01 ИК-датчик температуры (4-20 мА)
- SEN0169 Аналоговый pH-метр Pro
- DFR0300-H Gravity: аналоговый датчик электропроводности (K = 10)
- DFR0300 Гравитационный аналоговый датчик электропроводности V2 K = 1
- SEN0165 Аналоговый измеритель ОВП
- SEN0161-V2 Комплект гравитационного аналогового датчика pH V2
- SEN0161 PH метр
- SEN0237 Гравитационный аналоговый датчик растворенного кислорода
- SEN0204 Бесконтактный датчик уровня жидкости XKC-Y25-T12V
- SEN0205 Датчик уровня жидкости-FS-IR02
- SEN0244 Gravity Analog TDS Sensor Meter для Arduino
- SEN0249 Комплект измерителя pH с аналоговым наконечником копья силы тяжести для применения в почве и пищевых продуктах
- SEN0121 Датчик пара
- SEN0097 Датчик освещенности
- DFR0026 Датчик внешней освещенности DFRobot
- TOY0044 УФ-датчик
- SEN0172 LX1972 датчик внешней освещенности
- SEN0043 TEMT6000 датчик внешней освещенности
- SEN0175 УФ-датчик v1.0-ML8511
- SEN0228 Gravity I2C VEML7700 Датчик внешней освещенности
- SEN0101 Датчик цвета TCS3200
- DFR0022 Датчик оттенков серого DFRobot
- Датчик отслеживания линии SEN0017 для Arduino V4
- SEN0147 Интеллектуальный датчик оттенков серого
- SEN0212 TCS34725 Датчик цвета I2C для Arduino
- SEN0245 Gravity VL53L0X Лазерный дальномер ToF
- SEN0259 TF Mini LiDAR ToF Laser Range Sensor
- SEN0214 Датчик тока 20А
- SEN0262 Гравитационный аналоговый преобразователь тока в напряжение для приложений 4 ~ 20 мА
- SEN0291 Gravity: Цифровой ваттметр I2C
- DFR0027 Цифровой датчик вибрации DFRobot V2
- DFR0028 DFRobot Датчик наклона
- DFR0029 Цифровая кнопка DFRobot
- DFR0030 DFRobot емкостный датчик касания
- Модуль цифрового зуммера DFR0032
- DFR0033 Цифровой магнитный датчик
- DFR0034 Аналоговый звуковой датчик
- SEN0038 Колесные энкодеры для DFRobot 3PA и 4WD Rovers
- DFR0051 Аналоговый делитель напряжения
- DFR0052 Аналоговый пьезодисковый датчик вибрации
- DFR0076 Датчик пламени
- DFR0053 Аналоговый датчик положения ползуна
- DFR0054 Аналоговый датчик вращения V1
- DFR0058 Аналоговый датчик вращения V2
- Модуль джойстика DFR0061 для Arduino
- DFR0075 AD Клавиатурный модуль
- Модуль вентилятора DFR0332
- SEN0177 PM2.5 лазерный датчик пыли
- Модуль датчика веса SEN0160
- SEN0170 Тип напряжения датчика скорости ветра 0-5 В
- TOY0048 Высокоточный двухосевой датчик инклинометра, совместимый с Arduino Gadgeteer
- SEN0187 RGB и датчик жестов
- SEN0186 Метеостанция с анемометром Флюгер Дождь ведро
- SEN0192 Датчик микроволн
- SEN0185 датчик Холла
- FIT0449 DFRobot Speaker v1.0
- Датчик частоты сердечных сокращений SEN0203
- DFR0423 Самоблокирующийся переключатель
- SEN0213 Датчик монитора сердечного ритма
- SEN0221 Датчик угла Холла силы тяжести
- Датчик переключателя проводимости SEN0223
- SEN0230 Инкрементальный фотоэлектрический датчик угла поворота — 400P R
- SEN0235 Модуль поворотного энкодера EC11
- SEN0240 Аналоговый датчик ЭМГ от OYMotion
- SEN0232 Гравитационный аналоговый измеритель уровня звука
- SEN0233 Монитор качества воздуха PM 2.5, формальдегид, датчик температуры и влажности
- DFR0515 FireBeetle Covers-OSD Модуль наложения символов
- SEN0257 Датчик гравитационного давления воды
- SEN0289 Gravity: Цифровой датчик встряхивания
- SEN0290 Gravity: Датчик молнии
- DFR0271 GMR Плата
- ROB0003 Pirate 4WD Мобильная платформа
- Мобильная платформа ROB0005 Turtle 2WD
- ROB0025 NEW A4WD Мобильный робот с кодировщиком
- ROB0050 4WD MiniQ Полный комплект
- ROB0111 4WD MiniQ Cherokey
- ROB0036 Комплект роботизированной руки с 6 степенями свободы
- Комплект наклонно-поворотного устройства FIT0045 DF05BB
- ROB0102 Мобильная платформа Cherokey 4WD
- ROB0117 Базовый комплект для Cherokey 4WD
- ROB0022 4WD Мобильная платформа
- ROB0118 Базовый комплект для Turtle 2WD
- Робот-комплект ROB0080 Hexapod
- ROB0112 Мобильная платформа Devastator Tank
- ROB0114 Мобильная платформа Devastator Tank
- ROB0124 Мобильная платформа HCR с всенаправленными колесами
- ROB0128 Devastator Tank Мобильная платформа Металлический мотор-редуктор постоянного тока
- ROB0137 Explorer MAX Робот
- ROB0139 Робот FlameWheel
- DFR0270 Accessory Shield для Arduino
- DFR0019 Щит для прототипирования для Arduino
- DFR0265 IO Expansion Shield для Arduino V7
- DFR0210 Пчелиный щит
- DFR0165 Mega IO Expansion Shield V2.3
- DFR0312 Плата расширения Raspberry Pi GPIO
- DFR0311 Raspberry Pi встречает Arduino Shield
- DFR0327 Arduino Shield для Raspberry Pi 2B и 3B
- DFR0371 Экран расширения ввода-вывода для Bluno M3
- DFR0356 Щит Bluno Beetle
- DFR0412 Gravity IO Expansion Shield для DFRduino M0
- DFR0375 Cookie I O Expansion Shield V2
- DFR0334 GPIO Shield для Arduino V1.0
- DFR0502 Gravity IO Expansion & Motor Driver Shield V1.1
- DFR0518 Micro Mate — мини-плата расширения для микробита
- DFR0578 Gravity I O Expansion Shield для OpenMV Cam M7
- DFR0577 Gravity I O Expansion Shield для Pyboard
- DFR0626 MCP23017 Модуль расширения с IIC на 16 цифровых IO
- DFR0287 LCD12864 Экран
- DFR0009 Экран ЖК-клавиатуры для Arduino
- DFR0063 I2C TWI LCD1602 Модуль Gadgeteer-совместимый
- Модуль DFR0154 I2C TWI LCD2004, совместимый с Arduino Gadgeteer
- Светодиодная матрица DFR0202 RGB
- DFR0090 3-проводной светодиодный модуль
- TOY0005 OLED 2828 модуль цветного дисплея.Совместимость с NET Gadgeteer
- Модуль дисплея TOY0006 OLED 9664 RGB
- Модуль дисплея TOY0007 OLED 2864
- Модуль дисплея FIT0328 2.7 OLED 12864
- DFR0091 3-проводной последовательный ЖК-модуль, совместимый с Arduino
- DFR0347 2.8 TFT Touch Shield с 4 МБ флэш-памяти для Arduino и mbed
- DFR0348 3.5 TFT Touch Shield с 4 МБ флэш-памяти для Arduino и mbed
- DFR0374 Экран LCD клавиатуры V2.0
- DFR0382 Экран со светодиодной клавиатурой V1.0
- DFR0387 TELEMATICS 3.5 TFT сенсорный ЖК-экран
- DFR0459 Светодиодная матрица RGB 8×8
- DFR0460 Светодиодная матрица RGB 64×32 — шаг 4 мм / Гибкая светодиодная матрица 64×32 — Шаг 4 мм / Гибкая светодиодная матрица 64×32 — Шаг 5 мм
- DFR0461 Гибкая светодиодная матрица 8×8 RGB Gravity
- DFR0462 Гибкая светодиодная матрица 8×32 RGB Gravity
- DFR0463 Gravity Гибкая светодиодная матрица 16×16 RGB
- DFR0471 Светодиодная матрица RGB 32×16 — шаг 6 мм
- DFR0472 Светодиодная матрица RGB 32×32 — шаг 4 мм
- DFR0464 Gravity I2C 16×2 ЖК-дисплей Arduino с подсветкой RGB
- DFR0499 Светодиодная матрица RGB 64×64 — шаг 3 мм
- DFR0506 7-дюймовый дисплей HDMI с емкостным сенсорным экраном
- DFR0555 \ DF0556 \ DFR0557 Gravity I2C LCD1602 Модуль ЖК-дисплея Arduino
- DFR0529 2.2-дюймовый ЖК-дисплей TFT V1.0 (интерфейс SPI)
- DFR0605 Gravity: Цифровой светодиодный модуль RGB
- FIT0352 Цифровая светодиодная водонепроницаемая лента с RGB-подсветкой 60LED м * 3 м
- DFR0645-G DFR0645-R 4-цифровой светодиодный сегментный модуль дисплея
- Артикул DFR0646-G DFR0646-R 8-цифровой светодиодный сегментный модуль дисплея
- DFR0597 Гибкая светодиодная матрица RGB 7×71
- DFR0231 Модуль NFC для Arduino
- Модуль радиоданных TEL0005 APC220
- TEL0023 BLUETOOH BEE
- TEL0026 DF-BluetoothV3 Bluetooth-модуль
- Модуль беспроводного программирования TEL0037 для Arduino
- TEL0044 DFRduino GPS Shield-LEA-5H
- TEL0047 WiFi Shield V2.1 для Arduino
- TEL0051 GPS GPRS GSM модуль V2.0
- TEL0067 Wi-Fi Bee V1.0
- TEL0073 BLE-Link
- TEL0075 RF Shield 315 МГц
- TEL0078 WIFI Shield V3 PCB Антенна
- TEL0079 WIFI Shield V3 RPSMA
- TEL0084 BLEmicro
- TEL0086 DF-маяк EVB
- TEL0087 USBBLE-LINK Bluno Адаптер для беспроводного программирования
- TEL0080 UHF RFID МОДУЛЬ-USB
- TEL0081 УВЧ RFID МОДУЛЬ-RS485
- TEL0082 UHF RFID МОДУЛЬ-UART
- TEL0083-A GPS-приемник для Arduino Model A
- TEL0092 WiFi Bee-ESP8266 Wirelss модуль
- Модуль GPS TEL0094 с корпусом
- TEL0097 SIM808 GPS GPRS GSM Shield
- DFR0342 W5500 Ethernet с материнской платой POE
- DFR0015 Xbee Shield для Arduino без Xbee
- TEL0107 WiFiBee-MT7681 Беспроводное программирование Arduino WiFi
- TEL0089 SIM800C GSM GPRS Shield V2.0
- Модуль приемника RF TEL0112 Gravity 315MHZ
- TEL0113 Gravity UART A6 GSM и GPRS модуль
- TEL0118 Gravity UART OBLOQ IoT-модуль
- Модуль TEL0120 DFRobot BLE4.1
- Bluetooth-адаптер TEL0002
- Модуль аудиоприемника Bluetooth TEL0108
- TEL0124 SIM7600CE-T 4G (LTE) Shield V1.0
- DFR0505 SIM7000C Arduino NB-IoT LTE GPRS Expansion Shield
- DFR0013 IIC для GPIO Shield V2.0
- Плата привода двигателя датчика DFR0057 — Версия 2.2
- DFR0062 Адаптер WiiChuck
- DFR0233 Узел датчика RS485 V1.0
- DFR0259 Arduino RS485 щит
- DFR0370 Экран CAN-BUS V2
- DFR0627 IIC для двойного модуля UART
- TEL0070 Multi USB RS232 RS485 TTL преобразователь
- DFR0064 386AMP модуль аудиоусилителя
- DFR0273 Экран синтеза речи
- DFR0299 DFPlayer Mini
- TOY0008 DFRduino Плеер MP3
- SEN0197 Диктофон-ISD1820
- DFR0420 Аудиозащитный экран для DFRduino M0
- DFR0534 Голосовой модуль
- SD2403 Модуль часов реального времени SKU TOY0020
- TOY0021 SD2405 Модуль часов реального времени
- DFR0151 Модуль Gravity I2C DS1307 RTC
- DFR0469 Модуль Gravity I2C SD2405 RTC
- DFR0316 MCP3424 18-битный канал АЦП-4 с усилителем с программируемым усилением
- DFR0552 Gravity 12-битный модуль I2C DAC
- DFR0553 Gravity I2C ADS1115 16-битный модуль АЦП, совместимый с Arduino и Raspberry Pi
- DFR0117 Модуль хранения данных Gravity I2C EEPROM
- Модуль SD DFR0071
- Плата привода двигателя датчика DFR0057 — Версия 2.2
- DFR0360 XSP — Программист Arduino
- DFR0411 Двигатель постоянного тока Gravity 130
- DFR0438 Яркий светодиодный модуль
- DFR0439 Светодиодные гирлянды красочные
- DFR0440 Модуль микровибрации
- DFR0448 Светодиодные гирлянды, теплый белый цвет
- Встроенный термопринтер DFR0503 — последовательный TTL
- DFR0504 Гравитационный изолятор аналогового сигнала
- DFR0520 Двойной цифровой потенциометр 100K
- DFR0565 Гравитационный цифровой изолятор сигналов
- DFR0563 Гравитация 3.Датчик уровня топлива литиевой батареи 7V
- DFR0576 Гравитационный цифровой мультиплексор I2C с 1 по 8
- DFR0117 Модуль хранения данных Gravity I2C EEPROM
- DRI0001 Моторный щит Arduino L293
- DRI0002 MD1.3 2A Двухмоторный контроллер
- DRI0009 Моторный щит Arduino L298N
- DRI0021 Драйвер двигателя постоянного тока Veyron 2x25A Brush
- DRI0017 2A Моторный щит для Arduino Twin
- Драйвер двигателя постоянного тока DRI0018 2x15A Lite
- Микродвигатель постоянного тока FIT0450 с энкодером-SJ01
- FIT0458 Микродвигатель постоянного тока с энкодером-SJ02
- DFR0399 Микро-металлический мотор-редуктор постоянного тока 75 1 Вт Драйвер
- DRI0039 Quad Motor Driver Shield для Arduino
- DRI0040 Двойной 1.Драйвер двигателя 5A — HR8833
- DRI0044 2×1.2A Драйвер двигателя постоянного тока TB6612FNG
- Драйвер двигателя постоянного тока DFR0513 PPM 2x3A
- DFR0523 Гравитационный цифровой перистальтический насос
- DRI0027 Digital Servo Shield для Arduino
- DRI0029 24-канальный сервопривод Veyron
- SER0044 DSS-M15S 270 ° 15KG Металлический сервопривод DF с аналоговой обратной связью
- DRI0023 Экран шагового двигателя для Arduino DRV8825
- DRI0035 TMC260 Щиток драйвера шагового двигателя
- DFR0105 Силовой щит
- DFR0205 Силовой модуль
- DFR0457 Контроллер мощности Gravity MOSFET
- DFR0564 Зарядное устройство USB для 7.Литий-полимерная батарея 4 В
- DFR0535 Менеджер солнечной энергии
- DFR0559 Солнечная система управления мощностью 5 В для подсолнечника
- DFR0559 Менеджер солнечной энергии 5 В
- DFR0580 Solar Power Manager для свинцово-кислотных аккумуляторов 12 В
- DFR0222 Реле X-Board
- Релейный модуль DFR0017, совместимый с Arduino
- DFR0289 Релейный контроллер RLY-8-POE
- DFR0290 RLY-8-RS485 8-релейный контроллер
- DFR0144 Релейный экран для Arduino V2.1
- DFR0473 Gravity Digital Relay Module Совместимость с Arduino и Raspberry Pi
- KIT0003 EcoDuino — Комплект для автомобильных заводов
- KIT0071 MiniQ Discovery Kit
- KIT0098 Пакет компонентов подключаемого модуля Breadboard
- Артикул DFR0748 Цветок Китти
- SEN0305 Гравитация: HUSKYLENS — простой в использовании датчик машинного зрения AI
- Подключение датчика к Raspberry Pi
с использованием Arduino | Код | Схема | PCB
Измерение мощности переменного тока с помощью микроконтроллера Arduino и измерительного трансформатора . В этой статье представлено программное и аппаратное решение, касающееся микроконтроллера Atmeaga328P и модуля измерения мощности измерительного трансформатора для измерения мощности переменного тока. Мы также предоставляем оборудование и программу Arduino для измерения мощности переменного тока.
Чтобы обеспечить более точное измерение мощности переменного тока с использованием Arduino, мы разработали экономичный ваттметр переменного тока DIY с использованием трансформатора тока ZMCT103C и трансформатора напряжения ZMPT107 . Этот DIY ваттметр переменного тока предназначен для эффективного измерения
- переменного напряжения
- переменного тока
- активной мощности
- полной мощности
- коэффициента мощности.
Этот DIY модуль ваттметра переменного тока используется для контроля однофазной мощности до 1000 В переменного тока и 100 А. Вы можете легко подключить этот модуль к любому микроконтроллеру, например, Arduino, STM32, PIC, AVR и т. Д.
ZMCT103C высокоточный микротоковый преобразователь для монтажа на печатной плате преобразует высокий первичный ток в более низкий вторичный ток. Этот модуль позволяет легко контролировать ток в сети переменного тока до 5 ампер. Для измерения более высокого тока вы можете заменить ZMCT103C клеммой PBT и подключить любой проводной трансформатор тока до 100 А.
Существует потребность в точных и экономичных методах измерения напряжения и тока с использованием плат Arduino.
Измерение мощности. Основная цель этого проекта — измерение мощности для снижения пикового потребления электроэнергии путем предоставления потребителям информации об их мгновенном потреблении энергии. Цель предоставления таких данных пользователю — побудить его переключить нагрузку в непиковые часы и снизить потребление энергии и счета за электроэнергию.
ATMEGA328P имеет встроенный 10-разрядный АЦП для измерения тока и напряжения, GPIO для управления ЖК-дисплеем и множество других периферийных устройств для связи, обнаружения несанкционированного доступа, клавиатуры и отключения питания.