Üks sagedane klient küsib meilt, kuidas saaksime rakendada lihtsat, kuid nutikat lahendust, et laadida elektriautot ainult kõige odavama elektritariifiga, kasutades Nordpooli elektribörsi hindu.
Vastus on väga lihtne. Seda lahendust saab kasutada mitte ainult elektriautode laadimiseks, vaid ka vee soojendamiseks või muudeks vajadusteks.
Tööpõhimõte on üsna lihtne. Nutikas relee kontrollib kontakti, lülitab sisse/välja vastavalt skriptile ja peab kontrollima CP-kontakti laadimisjaamas.
Skript
let CONFIG = {
api_endpoint: "https://dashboard.elering.ee/api/nps/price/lt/current",
switchId: 0, // Jūsų rėlės ID. Jeigu vieno kontakto, bus 0. Jeigu kelių, pagal numerį
price_limit: 200, // EUR/MWh. Svarbu, kaina be PVM.
update_time: 60000, // 1 minutė. Kas kiek laiko tikrinsime kainas ?
reverse_switching: false // Įjungia rėlę, jeigu atitinka Jūsų kainą, jeigu ne, išjungia.
};
let current_price = null;
let last_hour = null;
let last_price = null;
let state = null;
function getCurrentPrice() {
Shelly.call(
"http.get",
{
url: CONFIG.api_endpoint,
},
function (response, error_code, error_message) {
if (error_code !== 0) {
print(error_message);
return;
}
current_price = JSON.parse(response.body).data[0]["price"];
print("Updated current price!");
}
);
}
function changeSwitchState(state) {
let state = state;
if(state === false) {
print("Switching off!");
} else if(state === true) {
print("Switching on!");
} else {
print("Unknown state");
}
Shelly.call(
"Switch.Set",
{
id: CONFIG.switchId,
on: state,
},
function (response, error_code, error_message) {
if (error_code !== 0) {
print(error_message);
return;
}
}
);
}
Timer.set(CONFIG.update_time, true, function (userdata) {
Shelly.call("Sys.GetStatus", {}, function (resp, error_code, error_message) {
if (error_code !== 0) {
print(error_message);
return;
} else {
let hour = resp.time[0] + resp.time[1];
//atnaujiname kainas
if (last_hour !== hour) {
print("update hour");
last_hour = hour;
getCurrentPrice();
}
//Tinkriname ar nustatyta kaina
if (current_price !== null) {
//Standartinis ijungimas. Išjungiame, jeigu virisijame limita
if(CONFIG.reverse_switching === false) {
if (current_price >= CONFIG.price_limit) {
//isjungiame, jeigu virs limito
changeSwitchState(false);
} else {
//ijungiame, jeigu tenkina salygas limito
changeSwitchState(true);
}
}
//reversinis variantas.
if(CONFIG.reverse_switching === true) {
if (current_price >= CONFIG.price_limit) {
//ijungiame, jeigu netenkina limito salygos
changeSwitchState(true);
} else {
//isjungiame, jeigu tenkina limito salygas
changeSwitchState(false);
}
}
} else {
print("Current price is null. Waiting for price update!");
}
print(current_price);
}
});
});
Teil on vaja nutikat releed, me soovitame Shelly nutikat releed. Pärast otse releega ühendamist kopeerige skripti enda alla Scripts ja ärge unustage pärast salvestamist skripti käivitada.
-
ABB Terra DC Wallbox 22,5 kW CCS2 + Chademo
€11,495.00 -
ABL eMH1 Basic 11kW
€292.82 – €338.80 -
Adapter CEE 32 A 3 faasist CEE 16 A-le
Original price was: €35.09.€29.04Current price is: €29.04. -
Adapter CEE 32 A 3-faasiline CEE 32 A 1-faasiline
€29.04 -
Alpitronic Hypercharger HYC150 DC
€60,487.90 -
Alpitronic Hypercharger HYC50 DC Wallbox
€20,570.00 -
Alumiiniumist statiiv laadimisjaama jaoks
€238.37 -
Alus 2 ABB Terra AC laadimisjaamale
Original price was: €726.00.€580.80Current price is: €580.80. -
Bluetoothi sildi ripats
Original price was: €7.26.€5.45Current price is: €5.45.