Lan kontroler pvmon...
 
Powiadomienia
Wyczyść wszystko

Pytanie Lan kontroler pvmonitor

21 Wpisów
4 Użytkownicy
0 Reactions
5,637 Wyświetleń
(@rakon)
Wpisów: 55
Kontrybutor
Autor tematu
 

Witam chciałem się zapytać czy może ktoś korzysta z pvmonitor i lan kontrolera ,który zbiera dane z produkcji i zużycia energii i wysyła w formie get na serwery pvmonitora. Czy można to jakoś spiąć jeszcze z Domoticzem 

Sam lankontroler to jakiś zaprogramowany microkontroler wpięty w sieć lan.

 
Dodane : 17/10/2021 3:42 pm
(@mig41)
Wpisów: 626
Ekspert
 

Jak masz domoticz , to po co Ci do tego lankontroler , możesz wysłać dane na pvmonitor bezpośrednio z domoticza.

 
Dodane : 17/10/2021 4:58 pm
(@rakon)
Wpisów: 55
Kontrybutor
Autor tematu
 

@marcingajda 

wysyłkę na pvmonitor mam juz od 2lat ,a domoticzem zainteresowałem się dopiero teraz i tak się zacząłem zastanawiać czy można to jakoś ogarnąć.Możesz coś więcej na temat takiej wysyłki,

 
Dodane : 18/10/2021 11:26 am
(@mig41)
Wpisów: 626
Ekspert
 

Problem w tym ,że ekspertem od domoticza nie jestem , no i też go już na codzień nie używam. Ale są tu specjaliści ,którym wystarczy jedno słowo 🙂

Ja wysyłam wszystkie rzeczy ( a w sumie są to dane z pompyciepła ,z pv a także ostatnio ładowanie samochodu PHEV) z Nodereda ( i z tm bardziej mogę pomóc) , bo tak mi jakoś było najłatwiej.

A trzeba wysłać GET w postaci:

http://dane.pvmonitor.pl/pv/get.php?idl=numerinstalacji&p=haslodopvmonitor&tm=yyyy-mm-ddThh:mm:ss&fx1=x1&fx2=x2&fx3=x3

 

gdzie fx1 ,fx2 .... to odpowiednie numery funkcji do znalezienia w opisach , a x1,x2... to wysyłane wartości , no i trzeba to wysyłać nie częściej niż 3 min....

 
Dodane : 18/10/2021 5:08 pm
(@rakon)
Wpisów: 55
Kontrybutor
Autor tematu
 

@marcingajda 

powiedzmy że mam już idl i hasło i chcę wysyłać parametr f104 http://dane.pvmonitor.pl/pv/get.php?idl=numerinstalacji&p=haslodopvmonitor&tm=yyyy-mm-ddThh:mm:ss&f104 jak mam to ustawić w domoticzu.Jak ustawić odpowiedni format czasu i przerwy miedzy wysyłka.Jak wysłać z pobór z dwóch PC.

Możesz jakiegoś screna zapodać

 
Dodane : 22/10/2021 7:29 am
(@mig41)
Wpisów: 626
Ekspert
 

No właśnie to pytanie do mnie , bo domoticza kompletnie nie znam...

Więc może ktoś podpowie koledze jak wysłać takie coś w postaci GET w odstępach 3 minutowych , z aktualnie podstawioną datą , czasem i  wartością ... f104=wartość wysłać...

 

Ja mogę pomóc ,jak te dane wysłać z Nodereda...

 

 
Dodane : 22/10/2021 10:15 am
isom
 isom
(@isom)
Wpisów: 5178
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
 

@rakon poczytaj wiki domoticz co jest wymagane do uruchomienia wtyczek pythona i sobie to ogarnij na tym https://github.com/kofec/domoticz-tinycontrol , albo jak chcesz to instaluj Node-Red i buduj przepływ do wirtualnych czujników w domoticz

 
Dodane : 22/10/2021 1:14 pm
(@rakon)
Wpisów: 55
Kontrybutor
Autor tematu
 

@marcingajda 

Ok, to aby wysłać z nodereda musze go pewnie jakoś skomunikować z domoticzem?

Mam jedno flow do obsługi asystenta google home z polaczeniem z domoticzem  to by było coś podobnego?

 

 
Dodane : 22/10/2021 1:21 pm
(@mig41)
Wpisów: 626
Ekspert
 

No to jakoś nodereda z domoticzem zkomunikowałeś....

Ja używałem do tego mqtt i wtyczki mqtt. Domoticz wszysko wyluwał do topic domoticz/out , i nodered bez poblemu może to nasłuchiwać.

 
Dodane : 22/10/2021 1:57 pm
(@rakon)
Wpisów: 55
Kontrybutor
Autor tematu
 

@marcingajda 

Witam,pisałeś ze wysyłasz dane z domoticza na pvmonitor przez nodereda.

możesz mi pomoc z taka wysyłka tylko ze z HA.

pge

Mam już , a raczej dopiero odczyt encji z parametrem który chce wyslać. Nie wiem jak utworzyć odpowiedni format daty i czasu i jak to skonfigurować w get entities.Możesz podać jakiś swój przykład jak masz to skonfigurowane.

 
Dodane : 18/01/2022 8:55 pm
(@mig41)
Wpisów: 626
Ekspert
 

@rakon

Mam np. coś takiego , wysyła 11 parametrów na raz. 

[{"id":"cc5c799b623f64c6","type":"tab","label":"Flow 1","disabled":false,"info":"","env":[]},{"id":"11fff44e2e0b0909","type":"http request","z":"cc5c799b623f64c6","name":"","method":"GET","ret":"txt","paytoqs":false,"url":"","tls":"","persist":false,"proxy":"","authType":"","credentials":{},"x":710,"y":180,"wires":[[]]},{"id":"f2e5f97f5af90d76","type":"join","z":"cc5c799b623f64c6","name":"join payloads","mode":"custom","build":"object","property":"payload","propertyType":"msg","key":"topic","joiner":"","joinerType":"str","accumulate":false,"timeout":"","count":"12","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":130,"y":180,"wires":[["c098fe58eed14805"]]},{"id":"c098fe58eed14805","type":"function","z":"cc5c799b623f64c6","name":"time and data adder","func":"var idl = \"123456\";\nvar password = \"123456\";\n\nvar OutTemp = Number(msg.payload[\"Lacrosse/Sensor-3f/Temp\"]);\nvar OutHum = Number(msg.payload[\"Lacrosse/Sensor-3f/Hum\"]);\nvar PC_Energy = Number(msg.payload[\"Licznik/Total_El_Act_Energy\"]);\nvar TempzPC = Number(msg.payload[\"panasonic_heat_pump/1wire/286d1479a21603d2\"]);\nvar TempdoPC = Number(msg.payload[\"panasonic_heat_pump/1wire/288de579a2160390\"]);\nvar Tempposkraplaczu = Number(msg.payload[\"panasonic_heat_pump/main/Inside_Pipe_Temp\"]);\nvar Tempposprezarce = Number(msg.payload[\"panasonic_heat_pump/main/Discharge_Temp\"]);\nvar DHW_Temp = Number(msg.payload[\"panasonic_heat_pump/main/DHW_Temp\"]);\nvar RoomTemperature = Number(msg.payload[\"RoomTemperature\"]);\nvar RekNawiew = Number(msg.payload[\"RekNawiew\"]);\nvar RekWyciag = Number(msg.payload[\"RekWyciag\"]);\n\n\n\n\ntime = new Date();\ntime = (time.getFullYear() + '-' + ('00' + (time.getMonth()+1)).slice(-2) + '-' + ('00' + time.getDate()).slice(-2) + 'T' + ('00' + time.getHours()).slice(-2) + ':' + ('00' + time.getMinutes()).slice(-2) + ':' + ('00' + time.getSeconds()).slice(-2));\n\nmsg.payload = ` http://dane.pvmonitor.pl/pv/get.php?idl=${idl}&p=${password}&tm=${time}&f10=${PC_Energy}&f11=${TempzPC}&f12=${TempdoPC}&f13=${Tempposkraplaczu}&f14=${Tempposprezarce}&f15=${RoomTemperature}&f16=${OutTemp}&f26=${OutHum}&f22=${DHW_Temp}&f37=${RekNawiew}&f42=${RekWyciag}`;\n\n     return msg ;\n    ","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":320,"y":180,"wires":[["d0d31c09d51d56a5"]]},{"id":"d0d31c09d51d56a5","type":"change","z":"cc5c799b623f64c6","name":"","rules":[{"t":"set","p":"url","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":180,"wires":[["11fff44e2e0b0909"]]}]
 
Dodane : 18/01/2022 9:08 pm
(@rafalwozniak)
Wpisów: 6
Bywalec
 

@mig41 pokazuje mi błąd składni przy funkcji, próbuje wysyłać z Node Red zintegrowanego z Home Assistant

 
Dodane : 28/02/2023 2:33 pm
(@rafalwozniak)
Wpisów: 6
Bywalec
 

@rakon Witam, udało Ci się ogarnąć wysyłkę z Node Reda HA, u mnie coś przepływ @mig41 pokazuj błędy

 
Dodane : 28/02/2023 2:49 pm
(@mig41)
Wpisów: 626
Ekspert
 

Bo tam są moje dane , ktore trzeba dostowsować. Więc jakie błędy Ci pokazuje ?

 
Dodane : 28/02/2023 3:43 pm
(@rafalwozniak)
Wpisów: 6
Bywalec
 

@mig41 oczywiście dostosowałem do swoich danych, coś z częścią która generuje date i czas jest nie tak, bo po wywaleniu tej składni i wpisaniu ręcznie daty i godziny Node Red nie pokazuje błędów

 
Dodane : 28/02/2023 3:55 pm
(@mig41)
Wpisów: 626
Ekspert
 

Czyli ten fragment ?

time = new Date();
time = (time.getFullYear() + '-' + ('00' + (time.getMonth()+1)).slice(-2) + '-' + ('00' + time.getDate()).slice(-2) + 'T' + ('00' + time.getHours()).slice(-2) + ':' + ('00' + time.getMinutes()).slice(-2) + ':' + ('00' + time.getSeconds()).slice(-2));

 

 

Też mam NodeReda z HA , i to działa u mnie.

 

EDIT: A sam ten fragment powyżej w funkcji zwraca aktualny czas i datę ?

 
Dodane : 28/02/2023 4:10 pm
(@rafalwozniak)
Wpisów: 6
Bywalec
 

@mig41 w debug jest w sumie OK, natomiast jak jest ta część kodu odnośnie daty NodeRed przy funkcji zgłasza błąd, czerwony trójkącik, póki co niby przy odpowiedniej składni pvmonitor nic na razie nie rejestruje

responseUrl: "http://dane.pvmonitor.pl/pv/get.php?idl=111111&p=ooooooooo&tm=2023-02-28T16:28:06&f102=10800

 
Dodane : 28/02/2023 4:33 pm
(@mig41)
Wpisów: 626
Ekspert
 

Jak to jest cała odpowiedź , to na końcu nie  brakuje apostrofu ?

Skąd ten tekst jest ?

 
Dodane : 28/02/2023 4:50 pm
(@rafalwozniak)
Wpisów: 6
Bywalec
 

@mig41 jest " tylko się nie skopiował 🙂 , niby nod http request odpowiada OK, no cóż poczekam może zacznie coś malować.

Możesz zerknąć, na mój cały przepływ, czy według Ciebie powinien działać, na razie testowo wymuszam puszczenie z jakąś tam wartością, ale oczywiście docelowo podłącze konkretny sensor, ale z tym to nie będzie problemu

[{"id":"48a0f60f42a5cfdc","type":"http request","z":"6429b127.3aba","name":"","method":"GET","ret":"txt","paytoqs":"ignore","url":"","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":770,"y":3180,"wires":[["be3d392a57846c98"]]},{"id":"1140f246bfd0a82a","type":"function","z":"6429b127.3aba","name":"time and data adder","func":"var idl = \"111111\";\nvar password = \"oooooooooo\";\n\nvar Energia = Number(msg.energia);\n\n\ntime = new Date();\ntime = (time.getFullYear() + '-' + ('00' + (time.getMonth() + 1)).slice(-2) + '-' + ('00' + time.getDate()).slice(-2) + 'T' + ('00' + time.getHours()).slice(-2) + ':' + ('00' + time.getMinutes()).slice(-2) + ':' + ('00' + time.getSeconds()).slice(-2));\n\nmsg.payload = ` http://dane.pvmonitor.pl/pv/get.php?idl=${idl}&p=${password}&tm=${time}&f102=${Energia}`;\n\n\n     return msg;","outputs":1,"noerr":9,"initialize":"","finalize":"","libs":[],"x":380,"y":3180,"wires":[["d3460280f52e328a"]]},{"id":"d3460280f52e328a","type":"change","z":"6429b127.3aba","name":"","rules":[{"t":"set","p":"url","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":590,"y":3180,"wires":[["48a0f60f42a5cfdc"]]},{"id":"c43876ce4e53fa82","type":"inject","z":"6429b127.3aba","name":"","props":[{"p":"payload"},{"p":"energia","v":"11300","vt":"num"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":100,"y":3140,"wires":[["1140f246bfd0a82a"]]},{"id":"be3d392a57846c98","type":"debug","z":"6429b127.3aba","name":"debug 16","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1000,"y":3180,"wires":[]}]
 
Dodane : 28/02/2023 4:55 pm
(@mig41)
Wpisów: 626
Ekspert
 

Nie ,bo tym razem masz jedną spację za pierwszym cudzysłowiem ! 🙂

Usuń ją i będzie ok.

No i później zamień linię na :

var time = new Date();

 

wtedy zniknie błąd czerwonego trójkącika.

 
Dodane : 28/02/2023 9:24 pm
Strona 1 / 2
Udostępnij: