Dziś test możliwości AI dla tworzenia własnych Javascript do zastosowania w VIRTUINI IOT.
W poprzednim poście stworzyłem własny Javascript dla VIRTUINO z funkcją wyboru CASE. Funkcji tej nie ma w przykładach dołączonych do programu ale po kilku nieudanych próbach udało mi się stworzyć taki skrypt
/*
This script returns a text depending if the input Tag value
*/
//--- Copy values from Virtuino Variables to JavaScript variables
let inputValue = +Virtuino.readValue("inputTag"); // use the + to read as number
//--- enter the JavaScript code like the example below
function isValidNumber(v){
return ((v!=null) & (!isNaN(v)));
}
if (isValidNumber(inputValue)){ // be sure the input is not null
switch (inputValue ) {
case 1:
value ="very slowly";
break;
case 2:
value ="slowly";
break;
case 3:
value ="fast";
break;
case 4:
value ="very fast";
break;
// include as many cases as you like
default:
value ="dangerously";
break;
}
result = '{"tag":"outputTag", "value":"'+ value+ '"}'; // enclose text value with " "
}
else {
result = null; // don't write anything to the output
}
Jasne 🙂 — ale potrzebuję doprecyzowania, co dokładnie chcesz, żeby ten skrypt robił.
Virtuino to platforma (aplikacja + biblioteka) do komunikacji między mikrokontrolerem (np. ESP32, Arduino) a interfejsem graficznym w telefonie lub przeglądarce. JavaScript w tym kontekście można wykorzystać m.in. do:
-
Tworzenia panelu sterowania w przeglądarce (Virtuino Web Panel)
-
Pisania skryptów automatyzacji (Virtuino SE / IoT Studio)
-
Komunikacji z mikrokontrolerem przez MQTT, HTTP lub WebSocket
💡 Dlatego proszę — powiedz mi:
-
jakiej wersji Virtuino używasz (np. Virtuino 6, Virtuino SE, Virtuino MQTT, Virtuino Web)?
-
co skrypt ma robić? (np. odczyt czujnika, sterowanie przekaźnikiem, wysyłanie danych do chmury, tworzenie wizualizacji itp.)
var inputValue = Virtuino.readValue("inputTag"); //Read inputTag value as String. //--- enter the JavaScript code like the example below
if ((inputValue!=null) & (!isNaN(inputValue))) { // check if the input value is number
const x=100;
var newValue = x * inputValue;
result = '{"tag":"outputTag", "value":'+ newValue+ '}'; // return a json message }
else { // no input value available yet
result = null; // return null if you don't want to send a value to output variable }
{"tag":"...", "value":...}
).
Brak komentarzy:
Prześlij komentarz