Jadu, det var ju inte så hjälpsam logg... Är nog inne som Tommy på att man får prova med ett annat skriptspråk än lua, i förhoppning att få lite vettiga felutskrifter. Python, eller möjligtvis php via cron kanske skulle kunna vara ett alternativ tills vidare?
|
In reply to this post by Davil
Hej, nej det här övergår mitt förstånd. Jag provade nu att skapa en energimätare och tog ut kommandot för att uppdatera den med ett fast värde.
LUA ¶m är fortsatt & param Enligt Domotics så är kommandot: /json.htm?type=command& param=udevice&idx=IDX&nvalue=0&svalue=POWER;ENERGY Så det ser rätt ut iaf i mina ögon :-) Skriptet körs och inget fel registreras, jag får ut mina två print rader, men mätaren uppdateras inte. Om jag däremot öppnar urlen i Chrome så uppdateras värdet och JSON.html svarar { "status" : "OK", "title" : "Update Device" } Mycket konstigt på min ära...
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
Nu har jag provat allt jag kan komma på utan framgång så nu skiter jag i detta.
Mycket tråkigt att det inte vill fungera 😢. Det jag mest av allt är intresserad av att läsa av är ström IAC men men... Tack för allas försök!
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
This post was updated on .
Om du är sugen på att testa med PHP istället, så ser det här ut att fungera.
Inga felkontroller men det går att lösa om det blir problem. Skapa först en virtuell sensor i Domoticz, en Amphere (1 fas). Jag valde först en 3 fas, men då tar den bara heltal. <?php $dataManagerIP = "Ditt.Fronius.Ip.Här"; $domoticzIp = "Ditt.Domotizs.Ip.Här"; //Jag förutsätter port 8080 $IACid ="Ditt SensorID"; //Domotics ID för IAC // Inverter URL (allt på samma rad) $inverterDataURL = "http://".$dataManagerIP."/solar_api/v1/GetInverterRealtimeData.cgi?Scope=Device&DeviceID=1&DataCollection=CommonInverterData"; //Till hit. //Hämta IAC, sleep 5 behövs nog inte, jag läser själv från flera olika JSON, då är den ok. //sleep(5); $inverterJSON = file_get_contents($inverterDataURL); $inverterData = json_decode($inverterJSON, true); $inverterProduction = $inverterData["Body"]["Data"]["IAC"]["Value"]; // ta bort kommentarerna om du har problem med null värden i Domotics. //if ($inverterPoduction == null) { // $inverterProduction = 0; //} //Spara till domoticz //Allt på samma rad (glöm inte att ta bort mellanslag mellan $ och param $result = file_get_contents("http://" .$domoticzIp. ":8080/json.htm?type=command& param=udevice&idx=" .$IACid. "&nvalue=0&svalue=" .$inverterProduction); //Till hit //Skriv ut för att spana efter fel. Allt på samma rad. //echo ("http://" .$domoticzIp. ":8080/json.htm?type=command& param=udevice&idx=" .$IACid. "&nvalue=0&svalue=" .$inverterProduction); //Till hit ?> Slut PHP Nu har du ett php skript som förhoppningsvis fungerar. Jag använder crontab för att köra dessa skript på min maskin crontab -e Längst ner lägger du till reden. */5 * * * * php -f /home/pi/domoticz/scripts/jsonIAC.php >/dev/null 2>&1 Avsluta med CTRL-X. */5 betyder att den körs var 5e minut, ställ till vad du vill. Kontrollera att sökvägen till skriptet är rätt.
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
Jag gillar att ha det per fas och och det plockar jag också ut via JSON, det finns i SmartMeterns API
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
In reply to this post by TommyE
Det ser ut att fungera
Vi hade 0AMP under ca 30 minuter i natt
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
In reply to this post by TommyE
Wow! Detta är ju vad jag också vill ha!
Synd att mina kunskaper är ytterst begränsade inom detta Skulle du kunna vara snäll att skriva exakt hur det skall se ut så jag kan "kopiera och klistra in" ? För mig är min domoticz IP : 192.168.1.41:8080 Min Fronius IP: 192.168.1.39 Min virtuella sensor IAC 1-fas : 679 Ghaa...Jag hatar när jag inte förstår För att få till det så som du har med watt och Ampere per fas så borde jag behöva totalt 6st virtuella sensorer eller? Önskar jag var lika vass som dig på detta hehe...
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
This post was updated on .
Hehe, jag har bara övat mycket, så jag har blivit ganska bra på att klippa och klistra ihop sånt som andra redan gjort, men med den funktion som jag vill ha istället :-)
Nu blir det då en "for dummies" hoppas att det inte blir för mycket beskrivet. Kan du logga in på raspberryn med SSH? Jag använder programmet pytty (laddas ner på https://www.putty.org/) Starta putty och fyll i ditt raspberry ip under host name, kontrollera att SSH är valt. Klicka sedan på "Open" Om du inte ändrat lösenord på din PI så logga in med användarnamn "pi" och lösenord "raspberry" (utan "). Skriv cd domoticz/scripts och tryck enter, nu bör det se ut som raden nedan. pi@raspberrypi:~/domoticz/scripts $ skriv nano JSonIAC.php och tryck enter. Nu kommer du in i en enkel texteditor. I den navigerar du med piltangenterna. Kopiera skriptet det börja med <?php och ta med allt ner till ?> Klistra in texten i putty genom att ställa markören högst upp där du vill ha första tecknet, högerklicka sedan så klistras texten in. <?php $dataManagerIP = "192.168.1.39"; $domoticzIp = "192.168.1.41"; //Jag förutsätter port 8080 $IACid ="679"; //Domotics ID för IAC // Inverter URL (allt på samma rad) $inverterDataURL = "http://".$dataManagerIP."/solar_api/v1/GetInverterRealtimeData.cgi?Scope=Device&DeviceID=1&DataCollection=CommonInverterData"; //Till hit. //Hämta IAC //sleep(5); //äs in json filen från invertern $inverterJSON = file_get_contents($inverterDataURL); //Gör om den så php förstår att det är json $inverterData = json_decode($inverterJSON, true); //Hämta intressant värde, du känner igen taggarna inom ["Tagg"] om du tittar direkt i filen $inverterProduction = $inverterData["Body"]["Data"]["IAC"]["Value"]; // ta bort kommentarerna om du har problem med null värden i Domotics. //if ($inverterPoduction == null) { // $inverterProduction = 0; //} //Spara till domoticz //Solcels produktionen //Se till att allt ligger på samma rad och ta bort mellanslag mellan & param. $result = file_get_contents("http://" .$domoticzIp. ":8080/json.htm?type=command& param=udevice&idx=" .$IACid. "&nvalue=0&svalue=".$inverterProduction); //Ner hit //Om det blir fel så ta bort // på nästa rad så får du en utskrift på skärmen, ge den till mig. //Även den här raden ska vara på samma rad. och & param ska vara ihop //echo ("http://" .$domoticzIp. ":8080/json.htm?type=command& param=udevice&idx=" .$IACid. "&nvalue=0&svalue=".$inverterProduction"); //Till hit ?> Avsluta genom att trycka CTRL+X samtidigt och svara Ja att du vill spara. Prova att det fungere. skriv php JSonIAC.php Det är viktigt med stor och liten bokstav. Kontrollera om din sensor uppdateras. Fungerar det inte, så ta bort // framför raden med echo och kör php JSonIAC.php igen, nu skriver den ut en rad, klistra in den raden här, så kikar jag på den. För att kopiera en rad i putty, så markerar du den bara med musen. Får du något felmeddelande utskrivet? Klistra in det här också. Fungerar det inte så logga bara ut igen genom att skriva exit. Om det fungerar så automatiserar vi körningen med hjälp av crontab. Skriv då crontab -e Nu får du fram en lista med kommandon som körs i tidsintervall, vi vill köra den här var 5e minut så gå längst ner i filen, tryck på pil ner till du kommer dit (det går inte att markera med ex musen), lägg in den här raden där */5 * * * * php -f /home/pi/domoticz/scripts/JSonIAC.php >/dev/null 2>&1 Avsluta även den här editorn med CTRL+X och svara ja på om du vill spara. Om allt nu gått som det ska och alla tecken har hamnat rätt, så ska den uppdatera IAC var 5e minut. Gör den inte det, så är det något mindre fel som vi säkert kan hitta. Fungerar det inte så kör crontab -e igen och sätt ett # först på den nya raden (då blir det en kommentar och körs inte), så slipper du belasta pi:en mer än nödvändigt. Om du inte har bytt lösenord och din pi på något sätt är åtkomlig från nätet, så passa på att göra det nu. Skriv passwd och följ prompterna (eg skriv in nuvarande lösenord och sedan det nya och repetera det nya, Linux skriver inte ut lösenord så det syns ingenting när du skriver). Logga ut från pi genom att skriva exit. När du fått till det här att fungera så kan vi fixa per fas. Men en sak åt gången :-) Har du inte använt SSH så har du förmodligen inte uppdaterat pi:en på ett tag heller? Använd de här kommandona för att ladda ner det senaste. Det tar en stund att göra, så gör klar det andra först. Börja med sudo apt-get update sedan sudo apt-get upgrade Klart.
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
Stort tack!!
Men tyvärr verkar jag helt hopplös! Jag har gjort fram till testkörningen och det vill inte hitta när jag testar php JSonIAC.php Så här ser det ut via putty: pi@raspberrypi:~ $ cd domoticz/scripts pi@raspberrypi:~/domoticz/scripts $ dir buienradar_rain_example.pl dzVents lua restart_domoticz _domoticz_main JSonIAC.php lua_parsers templates _domoticz_main.bat JSonIAC.php.save python update_domoticz download_update.sh logrotate readme.txt pi@raspberrypi:~/domoticz/scripts $ php JSonIAC.php -bash: php: command not found pi@raspberrypi:~/domoticz/scripts $ och hur det ser ut i den där texteditorn ser du på bifogad bild suck.
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
Nu är det nära. Du har inte php installerat.
Logga in med putty igen och installera genom att skriva sudo apt-get install php5 Det spelar ingen roll vilken mapp du står i när du skriver det.
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
Aha! Ok!
Efter att ha installerat php får jag följade: pi@raspberrypi:~ $ cd domoticz/scripts pi@raspberrypi:~/domoticz/scripts $ php JSonIAC.php PHP Warning: file_get_contents(http://192.168.1.41:8080/json.htm?type=command¶m=udevice&idx=679&nvalue=0&svalue=4.87): failed to open stream: HTTP request failed! HTTP/1.1 401 Unauthorized in /home/pi/domoticz/scripts/JSonIAC.php on line 26
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
Jäklar, Domoticz går in och kontrollerar att du är inloggad (tror jag).
Nästa knep är att flytta skriptet, sätt det direkt i hemkatalogen. cd domotics/scripts mv JSonIAC.php ../../ cd php JSonIAC.php Om det inte heller fungerar så kanske du behöver apache webbservern också? sudo apt-get install apache Funkar det så måste du även ändra sökvägen i crontab
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
In reply to this post by Davil
Nu gjorde jag om och efter att ha tagit bort // framför echo står följande:
pi@raspberrypi:~/domoticz/scripts $ php JSonIAC.php PHP Parse error: syntax error, unexpected '"' in /home/pi/domoticz/scripts/JSonIAC.php on line 31
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
In reply to this post by TommyE
oj jag svarade innan jag såg detta svaret av dig. Ska se trixa vidare :)
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
In reply to this post by Davil
Jo det blev en liten typo på den raden. Nästan sist på raden har vi ett " som inte ska vara där.
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
Hm. Lite av Grekiska för mig men följande hände:
pi@raspberrypi:~ $ cd domoticz/scripts pi@raspberrypi:~/domoticz/scripts $ mv JSonIAC.php ../../ pi@raspberrypi:~/domoticz/scripts $ cd pi@raspberrypi:~ $ php JSonIAC.php PHP Warning: file_get_contents(http://192.168.1.41:8080/json.htm?type=command&p aram=udevice&idx=679&nvalue=0&svalue=0.89): failed to open stream: HTTP request failed! HTTP/1.1 401 Unauthorized in /home/pi/JSonIAC.php on line 27 pi@raspberrypi:~ $ ^C pi@raspberrypi:~ $ sudo apt-get install apache Reading package lists... Done Building dependency tree Reading state information... Done Package apache is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package 'apache' has no installation candidate pi@raspberrypi:~ $
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
Konstigt, jag tycker att php borde få öppna länken....
Kan du öppna länken i din Chrome eller explorer? sudo apt-get install apache2 Missade tvåan på slutet - förlåt. Hoppas att du inte får apache2 är redan den senaste versionen. apache2 är satt till manuellt installerad.
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
Meeen vad tusan är detta haha...
http://192.168.1.41:8080/json.htm?type=command¶m=udevice&idx=679&nvalue=0&svalue=0.89 När jag surfar in på länen så uppdateras sensorn!! Tyvärr hade jag tydligen senaste versionen av apache2.
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
Hmm, jag återkommer i morgon, måste ta en funderare - vad har jag gjort som du inte gjort? Datorer är mysko
6,0kWp: 8st JA-Solar 290W + 13st JA-Solar 285W. Fronius Symo 5.0-3-M + Smart Meter 63A-3, montage system Renusol Metasol+.
Taklutning 45°. Azimut 190° Ort Kiruna. Produktionsdata: PVOutput |
In reply to this post by Davil
Hmm. Flytten gick bra iaf
pi@raspberrypi:~/domoticz/scripts $ cd pi@raspberrypi:~ $ dir domoticz JSonIAC.php open-zwave-read-only rpi-clone pi@raspberrypi:~ $ php JSonIAC.php PHP Warning: file_get_contents(http://192.168.1.41:8080/json.htm?type=command¶m=udevice&idx=679&nvalue=0&svalue=0.42): failed to open stream: HTTP request failed! HTTP/1.1 401 Unauthorized in /home/pi/JSonIAC.php on line 27 pi@raspberrypi:~ $
Fronius Symo 17,5. Fronius Smartmeter. 18,24kW. 32 x 32st JA-Solar 285w paneler 20Gr lutning riktning Öst/Väst i Glanshammar Närke.
https://www.solarweb.com/Home/GuestLogOn?pvSystemid=26a3723a-9023-45ae-9816-b3d81c12c592 |
Free forum by Nabble | Edit this page |