Ask our Experts
Didn't find what you are looking for? Ask our experts!
Schneider Electric SpaceLogic KNX forum to get support and share knowledge including selection, installation and troubleshooting for spaceLYnk, Wiser for KNX, eConfigure KNX, SpaceLogic KNX Hybrid module and other topics.
Search in
Link copied. Please paste this link to share this article on your social media post.
Hello,
Looks like exist an application note to connect WISER LINK EER31600 or EER31800 + EER39000 5ti to Homelynk/Spacelynk.
Do you have more information ?
Link copied. Please paste this link to share this article on your social media post.
Hope it would be .. maybe via API?
Link copied. Please paste this link to share this article on your social media post.
looks like these scripts are working but for old version. Not the new one ![]()
Link copied. Please paste this link to share this article on your social media post.
nb_compt = 6
DEBUG = true
require('user.WiserLinkIP')
--[[ Description du nom des usages
Hot_Water = Eau Chaude Sanitaire
Cooling = Refroidissement
Heating = Chauffage
Sockets = Prises
Others = Autres
Electricity_Meter = Total issu du TIC
]]--
ADD_IP="192.168.1.11" -- Adresse IP du module Wiser Link IP
PORT=80 --Précision d'un numero de port si NAT sinon laisser 80
LOGIN="admin"--Login
PASS="admin"--Mot de passe
if not my_wiser then
my_wiser=WiserLinkIP.new(ADD_IP..":"..PORT,LOGIN,PASS)
end
-- Récupération des données depuis le module Wiser Link IP
-- Le rafraichissment est basé sur le temps de cycle du présent script
my_wiser:fetchDatas()
--Rafraichissment des valeurs sur KNX/IP
--log(my_wiser)
-- UPDATE KNX VARIABLES
-- Energies
grp.update('6/0/1', my_wiser.Energy_Heating) --Chauffage
grp.update('6/0/2', my_wiser.Energy_Sockets) --Prises
grp.update('6/0/3', my_wiser.Energy_Electricity_Meter) --Total
grp.update('6/0/4', my_wiser.Energy_Hot_Water) --Eau Chaude
grp.update('6/0/5', my_wiser.Energy_Others) --Autre
grp.update('6/0/6', my_wiser.Energy_Cooling) --Eau Froide
-- Puissances
--grp.update('6/1/0',my_wiser.Power_Sockets)
--grp.update('8/2/2',my_wiser.Power_Hot_Water)
--grp.update('8/2/3',my_wiser.Power_Heating)
--grp.update('8/2/4',my_wiser.Power_Cooling)
--grp.update('8/2/5',my_wiser.Power_Electricity_Meter)
--grp.update('8/2/6',my_wiser.Power_Others)
-- ******************************************** -- -- SCHNEIDER ELECTRIC -- -- -- -- Author : Valentin THOMAS -- -- Version : 1.0 -- -- Update Date : 17/10/2017 -- -- Name : WISER_LINK.lua -- -- -- -- ******************************************** -- WISER_LINK = function () local self = {script={}} local debug = false local history = false local json = require('json') local http = require("socket.http") -- ------------------------------------------------------------------- --- This function -- @param (none) -- -- @return (none) function round(nb) i,f=math.modf(nb) return i+(math.ceil(f/0.0625)*0.0625) end -- ------------------------------------------------------------------- --- This function -- @param (none) -- -- @return (none) function self.getData(_ip, _login, _password) local wiser_data = {} local datas, http_code, header, err = http.request("http://".._login..":".._password.."@".._ip.."/vesta/UsageMeter") --Si le code HTTP de la réponse est 200 if http_code == 200 then if not datas then error('Cannot fetch data at : '..ip_address) else local datas=json.decode(datas) for index,usage in pairs (datas.UsageMeterList)do usage_name=string.gsub(usage.Type," ","_")--Remplacement de l'espace par un underscore wiser_data["Power_"..usage_name]=round(usage.Power) wiser_data["Energy_"..usage_name]=round(usage.EnergyConsumed) end end else msg=string.format("Error in HTTP request, code:%s, Message:%s",http_code,err) error(msg) log(msg) alert(msg) end end -- ------------------------------------------------------------------- --- This function -- @param (none) -- -- @return (none) function self.script.event(event, _params) end -- ------------------------------------------------------------------- --- This function -- @param (none) -- -- @return (none) function self.script.cycle( _params ) end -- ------------------------------------------------------------------- --- This function -- @param (none) -- -- @return (none) function self.script.scheduler( _params ) end return self end class_var = WISER_LINK() return class_var -- CODE POUR SCRIPTS CLIENT --[[ WISER_LINK = require('user.WISER_LINK') params = { tag_name = 'record', -- tag to add to each knx object to record records_delay = 1, -- delay between 2 records in minutes records_limit = 50000, -- limit of the sql table (adviced 50 000 - 10% de la mémoire) export_delay = 60, -- delay between 2 exports on usb key in minutes export_value_separator = ';', -- name of the export file on the usb key export_line_separator = '\r\n', -- name of the export file on the usb key export_file_name = 'log.csv' -- name of the export file on the usb key } ]]--
You’ve reached the end of your document
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.