Котел от солнечной панели
- Войдите на сайт для отправки комментариев
Вс, 13/02/2022 - 17:22
Интересует помощь с проектом для работы котла от солнечных панелей.
Нужно
Замер мощности по 3 фазам. Сколько инвертор дает по каждой фазе в сеть.
Для каждой фазы. При условии для мощности 500 включать реле номер 1, при мощности более 1000 включать дополнительно реле номер 2.
есть оборудование
Mega 2560
3*PZM 004t
6 твердотельных реле.
Пземы старые или новые (у v2 и v3 разные протоколы) ?
должны быть V3
v3
Если реле разорвали цепь, то что будем измерять ???
Реле включают тэн котла и не выключают питание Ардуино
Странный ход мысли ...
\
Если актуально, телеграм @bb773301
Обсудим
схема совсем неправильная, измерять ток надо в фазном проводе, я так понимаю инверторы без стабилизации, изначально при появлении напряжения включается один тэн на фазу, если мощность в нагрузке превышает 500 ватт параллельно ему подкидывается еще по одному
схема совсем неправильная, измерять ток надо в фазном проводе, я так понимаю инверторы без стабилизации, изначально при появлении напряжения включается один тэн на фазу, если мощность в нагрузке превышает 500 ватт параллельно ему подкидывается еще по одному
Схема должна быть правильной. Инвертор подключен к сети ONGRID. Реле включается если в конкретной фазе мощность более 500ватт и второе реле если мощность более 1000ватт.
Можно представить, что тены питаются от другой сети но опираясь на данные первой сети с инвертером.
схема совсем неправильная, измерять ток надо в фазном проводе, я так понимаю инверторы без стабилизации, изначально при появлении напряжения включается один тэн на фазу, если мощность в нагрузке превышает 500 ватт параллельно ему подкидывается еще по одному
Схема должна быть правильной. Инвертор подключен к сети ONGRID. Реле включается если в конкретной фазе мощность более 500ватт и второе реле если мощность более 1000ватт.
Можно представить, что тены питаются от другой сети но опираясь на данные первой сети с инвертером.
у вас все три датчика в нулевом проводе, это считаете правильно?
схема совсем неправильная, измерять ток надо в фазном проводе, я так понимаю инверторы без стабилизации, изначально при появлении напряжения включается один тэн на фазу, если мощность в нагрузке превышает 500 ватт параллельно ему подкидывается еще по одному
Схема должна быть правильной. Инвертор подключен к сети ONGRID. Реле включается если в конкретной фазе мощность более 500ватт и второе реле если мощность более 1000ватт.
Можно представить, что тены питаются от другой сети но опираясь на данные первой сети с инвертером.
у вас все три датчика в нулевом проводе, это считаете правильно?
А с принципом работы PZEM 004T Знакомы?
схема совсем неправильная, измерять ток надо в фазном проводе, я так понимаю инверторы без стабилизации, изначально при появлении напряжения включается один тэн на фазу, если мощность в нагрузке превышает 500 ватт параллельно ему подкидывается еще по одному
Схема должна быть правильной. Инвертор подключен к сети ONGRID. Реле включается если в конкретной фазе мощность более 500ватт и второе реле если мощность более 1000ватт.
Можно представить, что тены питаются от другой сети но опираясь на данные первой сети с инвертером.
у вас все три датчика в нулевом проводе, это считаете правильно?
А с принципом работы PZEM 004T Знакомы?
да, но он у вас в общем проводе, а должен быть в проводе нагрузки, по вашей схеме в черном, оранжевом и сером проводах от тэнов к нулевому
схема совсем неправильная, измерять ток надо в фазном проводе, я так понимаю инверторы без стабилизации, изначально при появлении напряжения включается один тэн на фазу, если мощность в нагрузке превышает 500 ватт параллельно ему подкидывается еще по одному
Схема должна быть правильной. Инвертор подключен к сети ONGRID. Реле включается если в конкретной фазе мощность более 500ватт и второе реле если мощность более 1000ватт.
Можно представить, что тены питаются от другой сети но опираясь на данные первой сети с инвертером.
у вас все три датчика в нулевом проводе, это считаете правильно?
А с принципом работы PZEM 004T Знакомы?
да, но он у вас в общем проводе, а должен быть в проводе нагрузки, по вашей схеме в черном, оранжевом и сером проводах от тэнов к нулевому
Система ONGRID- означает что все электричество инвертер отдает в сеть. Следовательно по каждой фазе от инвертера есть мощность в зависимости от солнца. Из этой же сети питается тен котла.
Идея проекта включать на каждой фазе тен в соответствии с производимой мощностью.
Нужен скеч для одновременной работы 3 пземов и исходя из их показаний включение 1 и 2 реле для каждого пзема.
чтобы что-то программировать нужна нормальная электрическая схема и ТЗ, а не эти наскальные рисунки
ЗЫ как мне видится, тут даже одного датчика ZMPT101B в одной из фаз достаточно, если ТЭНы 2.2квт то первые ТРИ включаем при напряжении 50 вольт вторые при напряжении 100вольт, отключать в обратной последовательности и не городить городьбу, ардуино nano за глаза )))
PPS да и весь скетч уместится в 30 строк )))
#define pin_gr1 3 #define pin_gr2 6 #define pin_gr 9 #include "EmonLib.h" // Include Emon Library #define VOLT_CAL 258.7 // VALOR DE CALIBRAÇÃO (DEVE SER AJUSTADO EM PARALELO COM UM MULTÍMETRO)**258.7 84% EnergyMonitor emon1; //Create an instance void setup() { emon1.voltage(1, VOLT_CAL, 1.7); //Voltage: input pin, calibration, phase_shift // Пины D3 -:- D8 настроить на выход for(int i = pin_gr1; i < pin_gr; i++){pinMode(i,OUTPUT); digitalWrite(i,LOW);} } void loop() { emon1.calcVI(20, 2000); //Calculate all. No.of half wavelengths (crossings), time-out float Voltage = emon1.Vrms; //extract Vrms into Variable int vs = (int)Voltage; if(vs > 50){ for(int i = pin_gr1; i < pin_gr2; i++) digitalWrite(i,HIGH); }else{ for(int i = pin_gr1; i < pin_gr2; i++) digitalWrite(i,LOW); } if(vs > 100){ for(int i = pin_gr2; i < pin_gr; i++) digitalWrite(i,HIGH); }else{ for(int i = pin_gr2; i < pin_gr; i++) digitalWrite(i,LOW); } }чтобы что-то программировать нужна нормальная электрическая схема и ТЗ, а не эти наскальные рисунки
ЗЫ как мне видится, тут даже одного датчика ZMPT101B в одной из фаз достаточно, если ТЭНы 2.2квт то первые ТРИ включаем при напряжении 50 вольт вторые при напряжении 100вольт, отключать в обратной последовательности и не городить городьбу, ардуино nano за глаза )))
PPS да и весь скетч уместится в 30 строк )))
#define pin_gr1 3 #define pin_gr2 6 #define pin_gr 9 #include "EmonLib.h" // Include Emon Library #define VOLT_CAL 258.7 // VALOR DE CALIBRAÇÃO (DEVE SER AJUSTADO EM PARALELO COM UM MULTÍMETRO)**258.7 84% EnergyMonitor emon1; //Create an instance void setup() { emon1.voltage(1, VOLT_CAL, 1.7); //Voltage: input pin, calibration, phase_shift // Пины D3 -:- D8 настроить на выход for(int i = pin_gr1; i < pin_gr; i++){pinMode(i,OUTPUT); digitalWrite(i,LOW);} } void loop() { emon1.calcVI(20, 2000); //Calculate all. No.of half wavelengths (crossings), time-out float Voltage = emon1.Vrms; //extract Vrms into Variable int vs = (int)Voltage; if(vs > 50){ for(int i = pin_gr1; i < pin_gr2; i++) digitalWrite(i,HIGH); }else{ for(int i = pin_gr1; i < pin_gr2; i++) digitalWrite(i,LOW); } if(vs > 100){ for(int i = pin_gr2; i < pin_gr; i++) digitalWrite(i,HIGH); }else{ for(int i = pin_gr2; i < pin_gr; i++) digitalWrite(i,LOW); } }Проблема в том, что инвертер по 3 фазам дает 220 но разной мошности. По одной фазе дает 1кв по второй и третей по 0.5 кв и если ставить только 1-2 пзема то будет включение всех 3 тенов допустим 2 реле не каждом, и 1кв будет из сети, не с панелей.
Да признаю, что далек от этой тематики и не умею тз правильно составлят)
марку инвертера скажите, а то как сказки какие-то слышу про разную мощность по фазам, такое захочешь не сделаешь
марку инвертера скажите, а то как сказки какие-то слышу про разную мощность по фазам, такое захочешь не сделаешь
STP5.0-3AV-40 949
3 фазы по 7 ампер
3 фазы по 7 ампер
Да но когда солнце дигитальное приложение показывает, что мощьность по фазам отличается.
выравнивание нагрузки по фазам забота потребителя, значит ТЭНЫ разные
выравнивание нагрузки по фазам забота потребителя, значит ТЭНЫ разные
А причем тут проблема потребителя. Проблема в том, что мне надо мак получать с панелей. Для этого надо 3 замера иначе часть энергии уидет в сеть почти бесплатно по одной фазе а по второй я за дорого буду покупать ее.
у вас есть одно единственное решение задачи измерять напряжение с солнечных батарей и по его уровню подключать нагрузки, так как пороговое минимальное - 175 вольт а максимальное 800, в этом диапазоне и надо оперировать
у вас есть одно единственное решение задачи измерять напряжение с солнечных батарей и по его уровню подключать нагрузки, так как пороговое минимальное - 175 вольт а максимальное 800, в этом диапазоне и надо оперировать
Задача была конкретно описана. Какой смысл в написании кучи сообщений если они вообще не по теме.
Задача конкретная- замер мощности в 3 фазах, тремя пзмами и включение реле в 2 уровня при достижении определенных значений в каждой фазе.
И не надо доп фантазий о том как регулировать напряжение и тд.
и как вы отделите втекающую от вытекающей?
и как вы отделите втекающую от вытекающей?
Еще раз. Причем тут втекающая и вытекающая. Это не проблема и просто представить, что замер фаз в одной сети а реле в другой сети.
Это не проблема ...
сети инвертора и питающей подстанции связаны, синхронизированы, снять показания можно только со счетчика...
PS опосредованно рассчитать мощность можно зная соляризацию
Это не проблема ...
сети инвертора и питающей подстанции связаны, синхронизированы, снять показания можно только со счетчика...
PS опосредованно рассчитать мощность можно зная соляризацию
При производстве с солнечных панелей мощность по каждой фазе зависит от солнца в конкретный момент. То есть мы можем сделать замер по этим фазам. Если с эти фазы синхронизированы с сетью то все не востребуемое электричество уходит в сеть.
замер фаз с инвертора в сеть днем когда есть солнце как я понимаю должно показать мощность уходящую в сеть. Если мы замеряем фазу с инвертера и подключаем источник потребления, то также покажет максимальную производительность по фазе и не больше.
При производстве 200 ват по фазе и подключении потребителя на 1кв, замер на фазе все равно покажет 200вт.
Или я что то упускаю?
При производстве 200 ват по фазе и подключении потребителя на 1кв, замер на фазе все равно покажет 200вт.
Или я что то упускаю?
покажет 1 квт, у тебя по фазам закорочены выходы, и то покажет, если ты нули разделишь на нагрузках и пропустишь через датчик тока
PS в идеале ток в нулевом проводе при трёхфазной сети должен быть равен 0
При производстве 200 ват по фазе и подключении потребителя на 1кв, замер на фазе все равно покажет 200вт.
Или я что то упускаю?
покажет 1 квт, у тебя по фазам закорочены выходы, и то покажет, если ты нули разделишь на нагрузках и пропустишь через датчик тока
PS в идеале ток в нулевом проводе при трёхфазной сети должен быть равен 0
Можно еще сообщений 20 написать но как вижу результативность нулевая. Как понимаю скеч под условия замера одной сети и включения реле предложить не можете.
А как спалить сеть или убиться током я всегда сам смогу )))))
TC! вы хотите странного приняв неправильное техническое решение за основу, по вашим наскальным рисункам это нереализуемо!!!
TC! вы хотите странного приняв неправильное техническое решение за основу, по вашим наскальным рисункам это нереализуемо!!!
Как можно лучше сформулировать?
Есть 3 фазы по которым разная мощность, учитывая мощность в фазе надо включать одно или 2 реле.
TC! вы хотите странного приняв неправильное техническое решение за основу, по вашим наскальным рисункам это нереализуемо!!!
Как можно лучше сформулировать?
Есть 3 фазы по которым разная мощность, учитывая мощность в фазе надо включать одно или 2 реле.
за 1000 рублей помогу сформулировать ТЗ )))
TC! вы хотите странного приняв неправильное техническое решение за основу, по вашим наскальным рисункам это нереализуемо!!!
Как можно лучше сформулировать?
Есть 3 фазы по которым разная мощность, учитывая мощность в фазе надо включать одно или 2 реле.
за 1000 рублей помогу сформулировать ТЗ )))
За 2000 так уж быть рублей позволю это сделать)))))))))))))))))
понимаешь ТС! Способность исполнителя нарисовать принципиальную схему проектируемого девайса это тот порог входа, на который ориентируется потенциальный исполнитель кода программы...
Sadman41 точно в теме, но посмотрел на тебя и слился
Почему же слился. Я предоставил ТС скетч, но эффекта от этого действия не ощущаю.
Почему же слился. Я предоставил ТС скетч, но эффекта от этого действия не ощущаю.
так он мастер поговорить видимо...
надеешься, что ТС в состоянии подключить датчики по фэншую?
ЗЫ там кода в стандартном скетче - кот наплакал )))
/* Copyright (c) 2021 Jakub Mandula Example of using multiple PZEM modules together on one ModBUS. ================================================================ First of all, use the PZEMChangeAddress example in order to assign each individual PZEM module a unique custom address. This example requires 2 PZEM modules with addresses 0x10 and 0x11. Then for each PZEM module create a PZEM004Tv30 instance passing a custom address to the address field. The instances can either be stored as individual objects: ```c PZEM004Tv30 pzem0(&Serial2, 0x10); PZEM004Tv30 pzem1(&Serial2, 0x11); PZEM004Tv30 pzem2(&Serial2, 0x12); pzem0.voltage(); pzem1.pf(); ``` Or in an array and addressed using the array index: ```c PZEM004Tv30 pzems[] = { PZEM004Tv30(&Serial2, 0x10), PZEM004Tv30(&Serial2, 0x11), PZEM004Tv30(&Serial2, 0x12)}; pzems[0].voltage(); pzems[1].pf(); ``` */ #include <PZEM004Tv30.h> #if !defined(PZEM_RX_PIN) && !defined(PZEM_TX_PIN) #define PZEM_RX_PIN 16 #define PZEM_TX_PIN 17 #endif #if !defined(PZEM_SERIAL) #define PZEM_SERIAL Serial2 #endif #define NUM_PZEMS 2 PZEM004Tv30 pzems[NUM_PZEMS]; /* *************************************************************** * Uncomment USE_SOFTWARE_SERIAL in order to enable Softare serial * * Does not work for ESP32 *****************************************************************/ //#define USE_SOFTWARE_SERIAL #if defined(USE_SOFTWARE_SERIAL) && defined(ESP32) #error "Can not use SoftwareSerial with ESP32" #elif defined(USE_SOFTWARE_SERIAL) #include <SoftwareSerial.h> SoftwareSerial pzemSWSerial(PZEM_RX_PIN, PZEM_TX_PIN); #endif void setup() { Serial.begin(115200); // пины D2 - D7 настроим на выход for(int i = 2; i < 8; i++){ pinMode(i, OUTPUT); } // For each PZEM, initialize it for(int i = 0; i < NUM_PZEMS; i++) { #if defined(USE_SOFTWARE_SERIAL) // Initialize the PZEMs with Software Serial pzems[i] = PZEM004Tv30(pzemSWSerial, 0x10 + i); #elif defined(ESP32) // Initialize the PZEMs with Hardware Serial2 on RX/TX pins 16 and 17 pzems[i] = PZEM004Tv30(PZEM_SERIAL, PZEM_RX_PIN, PZEM_TX_PIN, 0x10 + i); #else // Initialize the PZEMs with Hardware Serial2 on the default pins /* Hardware Serial2 is only available on certain boards. * For example the Arduino MEGA 2560 */ pzems[i] = PZEM004Tv30(PZEM_SERIAL, 0x10 + i); #endif } } void loop() { // Print out the measured values from each PZEM module for(int i = 0; i < NUM_PZEMS; i++){ // Print the Address of the PZEM Serial.print("PZEM "); Serial.print(i); Serial.print(" - Address:"); Serial.println(pzems[i].getAddress(), HEX); Serial.println("==================="); // Read the data from the sensor float voltage = pzems[i].voltage(); float current = pzems[i].current(); float power = pzems[i].power(); float energy = pzems[i].energy(); float frequency = pzems[i].frequency(); float pf = pzems[i].pf(); // Check if the data is valid if(isnan(voltage)){ Serial.println("Error reading voltage"); } else if (isnan(current)) { Serial.println("Error reading current"); } else if (isnan(power)) { Serial.println("Error reading power"); } else if (isnan(energy)) { Serial.println("Error reading energy"); } else if (isnan(frequency)) { Serial.println("Error reading frequency"); } else if (isnan(pf)) { Serial.println("Error reading power factor"); } else { // Print the values to the Serial console Serial.print("Voltage: "); Serial.print(voltage); Serial.println("V"); Serial.print("Current: "); Serial.print(current); Serial.println("A"); Serial.print("Power: "); Serial.print(power); Serial.println("W"); Serial.print("Energy: "); Serial.print(energy,3); Serial.println("kWh"); Serial.print("Frequency: "); Serial.print(frequency, 1); Serial.println("Hz"); Serial.print("PF: "); Serial.println(pf); if(power >= 500) {digitalWrite(i+2,HIGH);} else { digitalWrite(i+2,LOW);} if(power >= 1000) {digitalWrite(i+5,HIGH);}else {digitalWrite(i+5,LOW);} } Serial.println("-------------------"); Serial.println(); } Serial.println(); delay(2000); }Если рабочий то обязательно вспомню и вышлю за проект. Пока со временем очень напряжно и до конца февраля даже проверить не могу.
1) Подари мне солнечные панели. Я знаю, куда их применить:
https://youtu.be/3K6yjTkktgo?list=PLWPGkgnA_YMZkDnZsAar3UHY7v8HcPFHe
2) Купи себе солнечный коллектор для нагрева воды. Схема соединения:
https://youtu.be/1abWT1N1S3g?list=PLWPGkgnA_YMaTwBM0gq4aywByMRI9SBjY
3) К ним есть смысл изобретать контроллер. :
https://youtu.be/tXy68wDCNlY?list=PLWPGkgnA_YMaTwBM0gq4aywByMRI9SBjY
ТС использует готовое решение "зелёной энергетики"... и его жаба душит гнать в систему излишки по столь низкой цене, хочет утилизировать на свои потребности
Спасибо всем за помощь.
Но к сожалению присланные варианты не заработали. Скорее всего из за моих кривых рук.
Большое спасибо помог Safronov, быстро составил рабочий вариант.
Спасибо всем за помощь.
Но к сожалению присланные варианты не заработали. Скорее всего из за моих кривых рук.
Большое спасибо помог Safronov, быстро составил рабочий вариант.
рабочий вариант возможен только при правильной схеме, которой не было, так что не удивительно