Как работает датчик напряжения сети 220В для Arduino. Какие бывают типы датчиков напряжения. Как правильно подключить датчик напряжения к Arduino. Какие меры безопасности нужно соблюдать при работе с высоким напряжением. Какой код нужен для считывания показаний с датчика.
Принцип работы датчика напряжения сети 220В для Arduino
Датчик напряжения сети 220В для Arduino позволяет измерять напряжение в электросети и передавать эти данные на микроконтроллер. Основные принципы работы такого датчика:
- Понижение высокого напряжения сети до безопасного уровня с помощью трансформатора или делителя напряжения
- Выпрямление переменного тока в постоянный с помощью диодного моста
- Сглаживание пульсаций выпрямленного напряжения конденсатором
- Преобразование напряжения в сигнал, который может считать Arduino (обычно 0-5В)
Таким образом, датчик преобразует высокое переменное напряжение сети в низковольтный сигнал, который безопасно подключается к аналоговому входу Arduino.
Типы датчиков напряжения сети 220В для Arduino
Существует несколько основных типов датчиков напряжения сети 220В, совместимых с Arduino:
- Трансформаторные — используют понижающий трансформатор для гальванической развязки
- На основе делителя напряжения — применяют высоковольтные резисторы для снижения напряжения
- Оптоизолированные — используют оптопару для электрической изоляции
- Интегральные — в виде готовых модулей на основе специализированных микросхем
Наиболее безопасными являются трансформаторные и оптоизолированные датчики, обеспечивающие полную гальваническую развязку от сети.
Подключение датчика напряжения сети 220В к Arduino
При подключении датчика напряжения сети 220В к Arduino необходимо соблюдать следующие правила:
- Использовать датчик с гальванической развязкой от сети
- Подключать выход датчика к аналоговому входу Arduino (A0-A5)
- Подать питание на датчик от Arduino (обычно 5В)
- Соединить общий провод (GND) датчика и Arduino
- Подключение к сети 220В должен выполнять квалифицированный электрик
Важно помнить, что работа с напряжением сети 220В очень опасна! Все подключения должны выполняться при отключенном электропитании.
Меры безопасности при работе с датчиком напряжения сети 220В
При работе с высоким напряжением сети необходимо соблюдать следующие меры безопасности:
- Использовать датчики только с гальванической развязкой от сети
- Не касаться оголенных проводов и контактов под напряжением
- Работать в диэлектрических перчатках и на резиновом коврике
- Использовать изолированный инструмент
- Отключать питание перед любыми подключениями
- Не оставлять схему без присмотра под напряжением
- При любых сомнениях обращаться к квалифицированному электрику
Помните, что неправильное обращение с сетевым напряжением может привести к серьезным травмам и даже смерти! Безопасность превыше всего.
Код для Arduino для считывания показаний с датчика напряжения сети 220В
Для считывания показаний с датчика напряжения сети 220В можно использовать следующий базовый код для Arduino:
«`cpp const int sensorPin = A0; // Аналоговый пин для подключения датчика void setup() { Serial.begin(9600); } void loop() { int sensorValue = analogRead(sensorPin); // Считываем значение с датчика // Преобразуем значение АЦП в напряжение float voltage = sensorValue * (5.0 / 1023.0); // Преобразуем напряжение датчика в напряжение сети // Здесь нужно использовать коэффициент, соответствующий вашему датчику float mainVoltage = voltage * 100; // Пример коэффициента Serial.print(«Напряжение сети: «); Serial.print(mainVoltage); Serial.println(» В»); delay(1000); // Пауза 1 секунда между измерениями } «`Этот код считывает аналоговое значение с датчика, преобразует его в напряжение и выводит результат в Serial Monitor. Коэффициент преобразования нужно подобрать в соответствии с характеристиками конкретного датчика.
Калибровка датчика напряжения сети 220В
Для точных измерений необходимо откалибровать датчик напряжения. Процесс калибровки включает следующие шаги:
- Подключите датчик к сети и Arduino
- Измерьте реальное напряжение в сети мультиметром
- Считайте показания с датчика через Arduino
- Вычислите коэффициент преобразования
- Внесите коэффициент в код Arduino
Коэффициент преобразования рассчитывается как отношение реального напряжения к показаниям датчика. Его нужно использовать в коде для получения корректных результатов измерений.
Применение датчика напряжения сети 220В с Arduino
Датчик напряжения сети 220В в сочетании с Arduino может использоваться для различных задач:
- Мониторинг качества электроэнергии
- Защита оборудования от перепадов напряжения
- Автоматизация управления электроприборами
- Сбор статистики энергопотребления
- Создание умных счетчиков электроэнергии
- Диагностика проблем в электросети
Возможности применения ограничены только вашей фантазией и потребностями конкретного проекта.
Шановні друзі! У зв`язку з відсутністю світла термінал в офісі тимчасово не працює. Дякуємо за розуміння.
|
Взаимодействие датчика напряжения с Arduino
В этом проекте мы научимся измерять напряжение с помощью Arduino, соединив датчик напряжения с Arduino. Используя этот интерфейс датчика напряжения Arduino, вы можете измерять напряжение до 25 В.
[adsense1]
Предупреждение. Если вы используете один и тот же модуль датчика напряжения, убедитесь, что его входное напряжение (напряжение для измерения) не превышает 25 В.
Краткое описание
Введение
Мы уже видели, как измерять внешние напряжения с помощью Arduino в проекте ЦИФРОВОЙ ВОЛЬТМЕТР ARDUINO .
Если вы хотите измерить внешнее напряжение с помощью Arduino, вы должны использовать контакты аналогового входа на плате Arduino. Если вы немного вспомните об аналоговых контактах Arduino, их входное напряжение ограничено 5 В, то есть вы можете измерять до 5 В напрямую, используя аналоговые входные контакты Arduino.
Но что, если вы хотите измерить напряжение выше 5 В? Вы не можете напрямую использовать аналоговые входные контакты Arduino, так как вы можете сжечь микросхему ATmega328P на плате Arduino UNO (или соответствующую микросхему микроконтроллера, в зависимости от используемой вами платы Arduino).
Модуль датчика напряжения приходит на помощь. Используя этот модуль датчика напряжения, вы можете измерять напряжение до 25 В.
[adsense2]
Выходное видео
Краткое примечание о модуле датчика напряжения
Датчик напряжения — это простой модуль, который можно использовать с Arduino (или любым другим микроконтроллером с допустимым входным напряжением 5 В) для измерения внешних напряжений. которые превышают его максимально допустимое значение, т. е. 5 В в случае Arduino.
Ниже приведено изображение модуля датчика напряжения, используемого в этом проекте.
Контакты датчика напряжения
Прежде чем углубляться в детали датчика напряжения, такие как его функциональность и схема, позвольте мне дать вам обзор доступных контактов модуля датчика напряжения.
По сути, датчик напряжения 25 В, подобный используемому здесь, имеет всего 5 контактов. Два из них находятся на двухконтактной винтовой клемме, а три — штыревые контакты.
Контакты винтовых клемм помечены как VCC и GND, и они должны быть подключены к внешнему источнику напряжения, т. е. к напряжению, которое необходимо измерить.
Что касается трех мужских заголовков, то они помечены буквами S, + и –. Вывод S — это вывод «Sense», и он должен быть подключен к аналоговому входу Arduino. Контакт «–» должен быть подключен к GND Arduino. Вывод, помеченный как «+», ни к чему не подключен (это размыкающий контакт).
На следующем рисунке показаны контакты модуля датчика напряжения.
- VCC : Положительная клемма измеряемого напряжения (0-25 В)
- Земля : Отрицательная клемма измеряемого напряжения
- S : Аналоговый вход Arduino
- + : Не подключен (Н/З)
- – : Земля Arduino
Схема датчика напряжения
Теперь поговорим о самом важном в датчике напряжения: его схеме. Датчик напряжения представляет собой делитель напряжения, состоящий из двух резисторов с сопротивлением 30 кОм и 7,5 кОм, то есть делитель напряжения 5 к 1.
На следующем изображении показана схема модуля датчика напряжения с ограничением входного напряжения 25 В.
Создайте свой собственный датчик напряжения
Использовать готовый модуль датчика напряжения очень просто, и если у вас его нет, вы можете легко создать его самостоятельно. Все, что вам нужно, это два резистора.
Если вы хотите сделать свой собственный датчик напряжения, который может измерять напряжение до 25 В, как этот модуль датчика напряжения, вам необходимо приобрести резистор на 30 кОм и резистор на 7,5 кОм.
Взаимодействие датчика напряжения с Arduino
Теперь, когда мы немного узнали о датчике напряжения, давайте теперь приступим к взаимодействию датчика напряжения с Arduino и измерим некоторые внешние напряжения.
Интерфейс датчика напряжения Arduino довольно прост. Подключите измеряемое напряжение к винтовой клемме датчика напряжения, подключив выход делителя напряжения к Arduino. Вот и все.
После сопряжения датчика напряжения с Arduino вы можете просмотреть результаты либо на последовательном мониторе Arduino IDE, либо на ЖК-дисплее 16×2. Я пошел с ЖК-дисплеем.
Принципиальная схема интерфейса датчика напряжения Arduino
На следующем рисунке показана принципиальная схема интерфейса датчика напряжения с Arduino.
Необходимые компоненты
- Arduino UNO [Купить здесь]
- Модуль датчика напряжения (для < 25 В)
- ЖК-дисплей 16 × 2 [Купить здесь]
- Потенциометр 10 кОм
- Резистор 330 Ом
- Соединительные провода
- Мини-макет
Схема
Сначала подключите контакты «S» и «–» датчика напряжения к A0 (аналоговый вход) и GND Arduino соответственно. Затем подключите контакты внешнего напряжения (напряжение, которое нужно измерить) к винтовой клемме (проверьте полярность).
Что касается ЖК-дисплея, контакты цифрового ввода/вывода 7 и 6 Arduino UNO подключены к RS и E, а контакты 5–2 Arduino UNO подключены к контактам D4–D7 соответственно.
Код
Рабочий
Я думаю, что работа проекта уже понятна. Поскольку модуль датчика напряжения представляет собой схему делителя напряжения, вы можете рассчитать входное напряжение по формуле 9.0003
Vin = Vout * (R2/(R1+R2))
Здесь R1 = 30000, R2 = 7500, а Vout можно рассчитать по аналоговому входу Arduino, используя Vout = (аналоговое значение * 5/1024).
Я реализовал то же самое в коде. Когда я подключил внешний источник питания 12 В в качестве входа к датчику напряжения, расчетное напряжение составило 11,94 В, что достаточно точно.
Мастерская AS220 Arduino
Мастерская AS220 ArduinoРезистивные датчики и делители напряжения
Я просто хотел сказать пару слов о датчиках, поскольку они относятся к Arduino. Надеюсь, это сделает некоторые схемы, которые вы видели в мастерской, более совершенными. немного прозрачнее.Как мы видели в классе, многие аналоговые датчики являются резистивными в том смысле, что они изменяют свое электрическое сопротивление в зависимости от величины раздражителя которые они получают из окружающей среды. это работа электрика схему, чтобы превратить это изменение сопротивления в изменение напряжения, которое мы можем затем измерьте с помощью аналого-цифровых преобразователей на плате Arduino.
Давайте сначала посмотрим на схему, которая НЕ работает,
+5В | +-----------O A0 (A/D вход Arduino) | R (датчик) | = (Земля)В этой схеме не имеет значения, какое сопротивление имеет датчик R. напряжение на одном выводе датчика всегда будет 5В, а напряжение на другой терминал всегда будет равен нулю. Это означает, что аналого-цифровой преобразователь всегда см. 5В независимо от того, какой стимул на датчике R. Давайте немного изменим эту схему,
+5В | R1 (датчик) | +-----------O A0 (A/D вход Arduino) | R2 (резистор) | = (Земля)Эта схема называется **делителем напряжения**, и напряжение на A0 можно вычислить как
A0 = [R2/(R1+R2)]5ВЕсли мы сделаем R1 и R2 точно такими же значениями, скажем, 1 кОм, то мы можем вычислить напряжение на A0 как
A0 = [1K/(1K+1K)]5В = [1K/2K]5В = 1/2 5В = 2,5ВТо есть, если значения сопротивления R1=R2, то делитель напряжения разделяет исходное напряжение пополам. Теперь, если мы выберем значения сопротивления как R1=1K и R2=2К, тогда
A0 = [2К/(1К+2К)]5В = 2/35ВНесложно разработать дополнительные примеры (например, R1=4K и R2=1K).
Вернемся к нашим датчикам. Возьмем наш датчик гибкости. Имеет значение сопротивления 10 кОм, когда он не согнут, и имеет значение сопротивления около 20 кОм, когда он согнут под углом 90 градусов. Теперь воспользуемся делителем напряжения, чтобы преобразовать стимул на датчике в различные напряжения. Давайте спроектируем его таким образом что когда датчик прогиба не загибается то мы получаем напряжение 2,5В. Этот означает, что когда на датчике нет стимула, мы разделяем оригинал 5 В напряжение пополам. Мы знаем, что наш гибкий датчик R1 имеет сопротивление 10K, поэтому в Чтобы разделить напряжение пополам, мы должны подобрать резистор R2 также с значение 10K для равномерного распределения напряжения,
+5В | R1=10K (датчик) | +-----------O A0 (A/D вход Arduino) | R2=10K (резистор) | = (Земля)Теперь, какое напряжение мы можем ожидать от делителя напряжения, когда гибкий датчик погнут на 90 градусов. Напомним, что когда датчик согнут, он имеет сопротивление 20К. Это дает нам следующие значения для делителя напряжения выше: R1=20K и R2=10K. Теперь подставим это в формулу делителя напряжения для А0:
A0 = [R2/(R1+R2)]5В = [10K/(20K+10K)]5В = 10/30 5В = 1/3 5В= 1,7ВЭто означает, что когда мы сгибаем датчик изгиба вперед и назад, напряжение на A0 колеблется. между 1,7В и 2,5В.
Теперь, какие значения мы можем ожидать в цифровой форме на Arduino после того, как напряжение прошло через аналого-цифровой преобразователь? АЦП делит HIGH=5V напряжение на A0 в 1023 дискретных шагах следующим образом:
0 В ----> 0 2,5 В ----> 511 5В ----> 1023Это означает, что когда датчик не согнут, аналого-цифровой преобразователь выдает значение 511. и когда датчик согнут, он выдает значение
(1,7 В/5 В) 1023 = (0,34) 1023 = 347Опять же, это означает, что когда мы сгибаем датчик, значения, которые чип Arduino видит, находятся в диапазоне от 511 (без изгиба) до 347 (90 градусов).