Моніторимо стан мережі або Вольтметр-самописець, Arduino та Rasperry
Arduino та Rasperry


Моніторимо стан мережі або Вольтметр-самописець
Мережева напруга, один з найважливіших показників якості електроенергії, що поставляється.
Питання особливо актуальне у приміських селищах та сільській місцевості. Цього року я теж зіткнувся з цією проблемою, напруга плавала протягом доби від 120 до 205 вольт, і як на зло під час складання акта з експлуатуючої мережі організацією прилади зафіксували 200В. що вписується у межі ГОСТ 220+-10%.
Як кажуть не миттям так катанням-ARDUINO нам на допомогу, і нехай показання приладу не занесеного до реєстру і не повіреного в метрологічних службах пришити кудись складно, але зробити певні висновки цілком реально.
І так до справи завдання безперервно моніторити напругу мережі протягом певного проміжку часу і складати їх на SD карту. Для цього нам знадобляться:
- Arduino - мозок системи

- Модуль годинника реального часу 1307RTC і - показання повинні бути прив'язані до реального часу

- Модуль SD картки - сюди власне ми і писатимемо показання

- Непотрібний трансформаторний блок живлення - узгодження напруги.
Arduino має аналогові входи з АЦП роздільною здатністю 8 біт (1024), але подавати на них можна лише 5 вольт.
Завдання зрозумілі приступаємо до творчості.
- Розбираємо блок живлення і викидаємо все, що стабілізує вихідну напругу, залишаються тільки трансформатор і випрямний міст, заміряємо напругу в мережі та на виході БП, у мене вийшло 195 і 6.8 розраховуємо дільник напруги отримуємо 28,6. Вважаємо максимально можливу напругу на виході при напрузі в мережі (із запасом) 260В та отримуємо9,1В. Розраховуємо дільник напруги так щоб на Arduinку надходило максимум 5 вольт під рукою виявилися наступні резистори R1 - 2.2К, R2 - 2К, що цілком влаштовує очікувану максимальну напругу 4,8 вольт.
- Калібруємо наш новий датчик, для цього чіпляємо його наступним чином заливаємо в ардуїнку маленький скетч:
//———————————————————————— void setup() Serial.begin(9600); > //———————————————————————— void loop() int analogPin = 0; Serial.println(analogRead(analogPin)); delay(1000); >
Включаємо датчик в мережу і спостерігаємо в моніторі порту покази, що оновлюються, також до мережі підключаємо зразковий вольтметр. Тепер ми готові обчислити поправочний коефіцієнт для майбутнього скетчу, мої дані: com порт - 669, вольтметр-187 вольт, разом поділивши перше на друге отримуємо коефіцієнт 3,58 на 1 вольт.
- Все зібрано та залито, наш вольтметр готовий
- Лог файл розібраний у excel

Вітання! Прикольна хрень! У мене теж є проблеми з мережами (правда трифазними) Чи може бути датчиком напругизвичайний транс 220-12, якщо туди просто додати міст із 4 діодів? Відповідай, якщо можна на пошту, потім не знайду твій сайт.
Цілком тільки дільник напруги треба перерахувати, ардуїно не можна подавати на вхід більше 5 вольт. До речі маючи 3 таких транси можна з 1 ардуїнкою писати відразу 3 фази і спостерігати їх перекоси, різницю напруги і т.д.
Для згладжування необхідно використовувати конденсатор після діодного моста. Інакше похибки великі будуть. І ще використовувати транс для цих цілей на мою не виправдано (і вже тим більше три транси на три фази). Можна поставити діод і кондиціонер (отримаємо згладжені «підлогу фази»). Перерахувати плече дільника і вийде дешевше та компактніше.
З першою частиною повністю згоден, у мене вони теж стоять, просто я хотів би відзначити, що додаткових стабілізаторів не потрібно. А ось відмовлятися від трансформаторної розв'язки з високою стороною я б не став, досить небезпечно, тим більше фактично дані у мене йдуть в мережу( на відміну від статті яка є тільки налагоджувальним прикладом), тут і роутер не довго підсмажити
А чи є у ардуїни обмеження струму? Мені просто треба знати - є струм, немає його в мережі вдома. Чи можу я підключити старий блок живлення від якогось і моніторити це?
Цілком можливо, тільки при пропаданні напруги ардуїно теж потрібно чимось живити? І друге ви найвірогідніше зможете моніторити лише наявність напруги т.к. в блоці живлення стоїть стабілізатор і він завжди вирівнюватиме напругу, як розрахувати дільника я написав
Мені це й потрібне. а підключати як на першій картинці з дільником напруги? чи як? я просто новенький ще зовсім ...
Та краще зробити дільник, щоб подавалося 3-4 Вольта не більше, принаймні напруга буде не на межі
а ардуїнонезалежно хочу запитати або від крони або від нетбука)))
ардуїно ненажерлива іграшка, крона дуже швидко сяде, тут треба або батарейку потужніше або використовувати алгоритми сну, і ще один варіант живити ардуїно від БП і писати час відключення та включення
Про писати, я так зрозумів, що на карту SD, хороша ідея))) а можна детальніше про алгоритми сну? А крона спокійно підключається, Ардуїно нічого не загрожує?
Модуль годинника реального часу 1307RTC кажуть краще не брати — бреше на 4 хвилини на добу. Модуль DS3231 краще?
Ну 4 хвилини на добу, звичайно, перебір, на добу може набігати до декількох секунд, для даного проекту точність в секундах не дуже актуальна. DS3231 дійсно точніший прилад
Вітаю! Не підкажіть як підконнектити блок живлення, наприклад до порту А0, щоб дізнатися чи йде від нього харчування? При цьому, щоб саму адруїнку живити від іншого блоку живлення.
Варіантів 2 або як у статті вимірюють напругу, або поставити оптопару і відловлювати наявність сигналу її.
void loop() // шрифт myGLCD.setFont(BigFont); // колір шрифту myGLCD.setColor(0, 200, 0);
// Виводимо на екран myGLCD.print(«Voltage», 18, 16); int sensor = analogRead(analogPin)/2.6; myGLCD.print(«v», 194, 16); myGLCD.printNumI(sensor, 144, 16);
Вітаю! Не можу знайти бібліотеку Time.h Дайте будь ласка посилання
Вітаю! Зібрав цей пристрій. Чому під час роботи скетча калібрування датчика в моніторі com порту нестабільні показання (від 200 до 1027). Також нестабільні показання під час моніторингу мережі, хоча мережа стабільна. Прошу допомогти.
Перевірте напругу на виході дільника, 1024 це багато, можна спалити входи, при необхідності перерахуйте опору. Десьвище вже писали, що на виході блоку живлення необхідний електроліт, він згладить зайві пульсації
Спасибі за відповідь. Промазав я з електролітом. Після установки 1000 мкф все стало добре, треба тільки дільник переробити.
У жодному разі так робити не можна! Тільки гальванічна розв'язка, вб'є/проб'є до ядра все і людей побивають ваші поради.
Як так? Живлення і так знімається після трансформатора блоку живлення, а конденсатор лише додатково згладжує напругу після випрямлення. Ніхто не разу не пропонував знімати напругу з безтрансформаторного БП. Прочитайте уважно п.1
Доброго дня, якщо робити пристрій на 3 фази, з'єднувати ще 2 фази можна до A0 і GND паралельно? І хотілося б дізнатися, що потрібно дописати до коду? Дякую
Зрозуміло, дякую. Назріла потреба відмоніторити напругу в мережі (тестер показує від 180 до 207). Що б Ви порадили змінити/удосконалити на наведеному вище пристрої на даний момент?