Variable Functions
Last updated
Last updated
Değişken fonksiyonları, script/expression ile inSCADA Platformunda tanımlanmış değişkenleri okuma/yazma işlemleri için kullanılır.
inSCADA içerisinde tanımlı bir değişkenin değerini okur.
variablename : String
Return Value : Variable nesnesi geri döndürür. Dönen değer "null" ise işlem başarısızdır. Variable okunamamıştır.
var val=ins.getVariableValue("UNIT01_Active_Power");
if (val != null) {
if (val.value>0) {
ins.notify("info","Unit 01","Unit 1 is working");
var val=ins.getVariableValue("UNIT01_Active_Power").value;
if (val>0) {
ins.notify("info","Unite 01","Unit 1 is working");
return val;
}
return -1;
inSCADA içerisinde tanımlı bir değişkenin önceki taramalardaki değerini okur. inSCADA değişkenlerin en son okunan 300 değerini hafızada tutar. Bu 250 değere index ile ulaşabilirsiniz.
variablename : String
Return Value : Variable nesnesi geri döndürür. Dönen değer "null" ise işlem başarısızdır. Variable okunamamıştır.
var variable=ins.getVariableValue("UNI01_Active_Power");
if (variable===null) {return -1}
var prv_variable=ins.getVariableValue("UNIT01_Active_Power",1);
if (prv_variable===null) {return -1}
if (variable.value!==prv_variable.value) {
ins.notify("info","Unit 01","Power value is changed");
}
return variable.value;
inSCADA içerisinde tanımlı, talep edilen değişken listesinin değerlerini okur.
variablenames[] : String array
Return Value : Talep edilen değişkenlerin nesnelerinden oluşan bir dizi döndürür.
var TAGS=["UNCORRECTED_FLOW_RATE",
"MASS_FLOW_RATE",
"CORRECTED_FLOW_RATE",
"ENERGY_FLOW_RATE",
"INDICATED_UNCORRECTED_FLOW_RATE",
"UNCORRECTED_TOTAL",
"MASS_TOTAL",
"CORRECTED_TOTAL",
"ENERGY_TOTAL",
"INDICATED_UNCORRECTED_TOTAL",
"CONVERTION_FACTOR",
"CORRECTED_FACTOR",
"LINE_COMPRESIBILITY",
"BASE_COMPRESIBILITY",
"LINE_PRESSURE",
"LINE_TEMPERATURE",
"LINE_DENSITY",
"BASE_DENSITY"];
var VALUES=ins.getVariableValues(TAGS);
if (VALUES===null) {return -1;}
var mass_flow_rate_value=VALUES["MASS_FLOW_RATE"].value;
var mass_flow_rate_timestamp=VALUES["MASS_FLOW_RATE"].date;
// veya
var corrected_flow_rate_value=VALUES.CORRECTED_FLOW_RATE.value;
Bir değişkenin hafızada tutulan son 300 değerinden bir kısmını liste olarak almamızı sağlar.
variableName : String olarak değişken ismi,
fromIndex : Integer olarak son 300 sıralı değer listesi içerisinden okunmak istenen değerlerin başlangıç noktası (0-299) .
toIndex : Integer olarak kaç adet veri okunacağı bilgisi.
// Bir değişkenin son okunan 50 değerinini alalım.
var values=ins.getVariableValues("G1_Current_Demand_I1",0,50);
return values;
// values
[
{"value":61.433663614480324,"extras":{},"date":"2023-03-16T10:36:17.001+03:00","flags":{},"dateInMs":1678952177001},
{"value":379.89418908510373,"extras":{},"date":"2023-03-16T10:36:16.003+03:00","flags":{},"dateInMs":1678952176003},
{"value":851.2367689630646,"extras":{},"date":"2023-03-16T10:36:15.001+03:00","flags":{},"dateInMs":1678952175001},
{"value":346.0620345845453,"extras":{},"date":"2023-03-16T10:36:14.001+03:00","flags":{},"dateInMs":1678952174001},
{"value":720.6215883854054,"extras":{},"date":"2023-03-16T10:36:13.001+03:00","flags":{},"dateInMs":1678952173001},
{"value":182.81102901616708,"extras":{},"date":"2023-03-16T10:36:12.003+03:00","flags":{},"dateInMs":1678952172003},
{"value":199.20723231180816,"extras":{},"date":"2023-03-16T10:36:11.002+03:00","flags":{},"dateInMs":1678952171002},
{"value":515.8443852150383,"extras":{},"date":"2023-03-16T10:36:10.004+03:00","flags":{},"dateInMs":1678952170004},
{"value":951.2103124828357,"extras":{},"date":"2023-03-16T10:36:09.002+03:00","flags":{},"dateInMs":1678952169002},
{"value":598.0987694530843,"extras":{},"date":"2023-03-16T10:36:08.002+03:00","flags":{},"dateInMs":1678952168002},
{"value":561.0978723063662,"extras":{},"date":"2023-03-16T10:36:07.002+03:00","flags":{},"dateInMs":1678952167002},
{"value":44.50005972417226,"extras":{},"date":"2023-03-16T10:36:06.002+03:00","flags":{},"dateInMs":1678952166002},
{"value":815.0318528238909,"extras":{},"date":"2023-03-16T10:36:05.001+03:00","flags":{},"dateInMs":1678952165001},
{"value":765.0835785903397,"extras":{},"date":"2023-03-16T10:36:04.002+03:00","flags":{},"dateInMs":1678952164002},{"value":216.50387619957434,"extras":{},"date":"2023-03-16T10:36:03.002+03:00","flags":{},"dateInMs":1678952163002},{"value":22.86808245300087,"extras":{},"date":"2023-03-16T10:36:02.002+03:00","flags":{},"dateInMs":1678952162002},{"value":969.9048622958677,"extras":{},"date":"2023-03-16T10:36:01.001+03:00","flags":{},"dateInMs":1678952161001},{"value":896.8836603613863,"extras":{},"date":"2023-03-16T10:36:00.002+03:00","flags":{},"dateInMs":1678952160002},{"value":277.5028221587634,"extras":{},"date":"2023-03-16T10:35:59.001+03:00","flags":{},"dateInMs":1678952159001},{"value":70.67029521193291,"extras":{},"date":"2023-03-16T10:35:58.003+03:00","flags":{},"dateInMs":1678952158003},{"value":291.11618303659225,"extras":{},"date":"2023-03-16T10:35:57.002+03:00","flags":{},"dateInMs":1678952157002},{"value":745.3449727328392,"extras":{},"date":"2023-03-16T10:35:56.003+03:00","flags":{},"dateInMs":1678952156003},{"value":50.6826757090284,"extras":{},"date":"2023-03-16T10:35:55.002+03:00","flags":{},"dateInMs":1678952155002},{"value":777.5362620560402,"extras":{},"date":"2023-03-16T10:35:54.002+03:00","flags":{},"dateInMs":1678952154002},{"value":546.3353867808364,"extras":{},"date":"2023-03-16T10:35:53.001+03:00","flags":{},"dateInMs":1678952153001},{"value":230.5195720431553,"extras":{},"date":"2023-03-16T10:35:52.002+03:00","flags":{},"dateInMs":1678952152002},{"value":416.18171665236315,"extras":{},"date":"2023-03-16T10:35:51.001+03:00","flags":{},"dateInMs":1678952151001},{"value":343.07369971066015,"extras":{},"date":"2023-03-16T10:35:50.001+03:00","flags":{},"dateInMs":1678952150001},{"value":836.632869329902,"extras":{},"date":"2023-03-16T10:35:49.005+03:00","flags":{},"dateInMs":1678952149005},{"value":141.42417143051256,"extras":{},"date":"2023-03-16T10:35:48.001+03:00","flags":{},"dateInMs":1678952148001},{"value":516.1728740742122,"extras":{},"date":"2023-03-16T10:35:47.002+03:00","flags":{},"dateInMs":1678952147002},{"value":724.9382150271371,"extras":{},"date":"2023-03-16T10:35:46.002+03:00","flags":{},"dateInMs":1678952146002},{"value":213.26669905900664,"extras":{},"date":"2023-03-16T10:35:45.004+03:00","flags":{},"dateInMs":1678952145004},{"value":752.4412997081702,"extras":{},"date":"2023-03-16T10:35:44.001+03:00","flags":{},"dateInMs":1678952144001},{"value":395.5627138536615,"extras":{},"date":"2023-03-16T10:35:43.004+03:00","flags":{},"dateInMs":1678952143004},{"value":205.12661586632785,"extras":{},"date":"2023-03-16T10:35:42.001+03:00","flags":{},"dateInMs":1678952142001},{"value":972.1776159770743,"extras":{},"date":"2023-03-16T10:35:41.002+03:00","flags":{},"dateInMs":1678952141002},{"value":5.072085842030338,"extras":{},"date":"2023-03-16T10:35:40.002+03:00","flags":{},"dateInMs":1678952140002},{"value":658.6417416236958,"extras":{},"date":"2023-03-16T10:35:39.001+03:00","flags":{},"dateInMs":1678952139001},{"value":817.9844747232485,"extras":{},"date":"2023-03-16T10:35:38.003+03:00","flags":{},"dateInMs":1678952138003},{"value":219.87088693654766,"extras":{},"date":"2023-03-16T10:35:37.001+03:00","flags":{},"dateInMs":1678952137001},{"value":299.8395627492436,"extras":{},"date":"2023-03-16T10:35:36.003+03:00","flags":{},"dateInMs":1678952136003},{"value":213.85056922989122,"extras":{},"date":"2023-03-16T10:35:35.001+03:00","flags":{},"dateInMs":1678952135001},{"value":343.4389246899222,"extras":{},"date":"2023-03-16T10:35:34.001+03:00","flags":{},"dateInMs":1678952134001},{"value":537.5509568719278,"extras":{},"date":"2023-03-16T10:35:33.001+03:00","flags":{},"dateInMs":1678952133001},{"value":289.17724207944826,"extras":{},"date":"2023-03-16T10:35:32.002+03:00","flags":{},"dateInMs":1678952132002},{"value":168.52665571067814,"extras":{},"date":"2023-03-16T10:35:31.002+03:00","flags":{},"dateInMs":1678952131002},{"value":394.0002362514996,"extras":{},"date":"2023-03-16T10:35:30.001+03:00","flags":{},"dateInMs":1678952130001},{"value":126.04238572456406,"extras":{},"date":"2023-03-16T10:35:29.001+03:00","flags":{},"dateInMs":1678952129001},{"value":59.692987122517806,"extras":{},"date":"2023-03-16T10:35:28.003+03:00","flags":{},"dateInMs":1678952128003},{"value":165.0792885368262,"extras":{},"date":"2023-03-16T10:35:27.002+03:00","flags":{},"dateInMs":1678952127002}]
inSCADA içerisindeki projeye bağlı tüm değişkenlerin değerini okur.
Return Value : Proje altındaki tüm değişkenlerin ve değerlerinin içerisinde olduğu bir JSON nesnesi döndürür.
var result=ins.getProjectVariableValues();
if (result!==null) {
return result;
}
return -1;
inSCADA içerisinde tanımlı bir değişkene değer yazar.
variablename : Değer yazılacak değişkenin ismi.
ins.setVariableValue("UNIT01_Active_Power_Set",{value:100});
inSCADA içerisinde tanımlı değişkenlere, tek seferde değer yazar.
variables : Değişkenlerin ve yazılmak istenen değerlerin içinde bulunduğu bir JSON nesnesidir.
var write_tags={};
write_tags.UNIT01_Active_Power_Set={value : 100};
// veya
write_tags["UNIT01_Active_Power_Set"]={value : 100};
// veya
var tag_list=["TagName1","TagName2","TagName3",...,"TagName30"]
for (var i=0;i<tag_list.length;i++) {
write_tags[tag_list[i]]={value:Math.random()*100};
}
ins.setVariableValues(write_tags);
Bir değişken değerini başka bir değişkene yazar.
Source : Okunacak değerin değişken ismidir. Kaynak değişken.
Destination : Değer yazılacak değişken ismidir. Hedef değişken.
ins.mapVariableValue("UNIT01_Active_Power","UNIT01_Active_Power_Set");
Kaynak değişkenin okunamadığı durumda, hedef değişkene varsayılan bir değer yazar.
ins.mapVariableValue("UNIT01_Active_Power","UNIT01_Active_Power_Set",-1);