Перейти к концу метаданных
Переход к началу метаданных

Направление ветра

Расчет направления ветра на языке ЯРД

wind.CLC
;#TT0:1:1 - направление ветра в градусах от 0 до 359 
;#TC0:1:1...#TC0:1:8 ТС направления ветра 
a = trunc((#TT0:1:1{}+22.5) / 45)  
#TC0:1:1 = OR((a=0),(a=8)) ;С    
#TC0:1:2 = (a=1)                ;СВ 
#TC0:1:3 = (a=2)                ;В 
#TC0:1:4 = (a=3)                ;ЮВ 
#TC0:1:5 = (a=4)                ;Ю 
#TC0:1:6 = (a=5)                ;ЮЗ 
#TC0:1:7 = (a=6)                ;З 
#TC0:1:8 = (a=7)                ;СЗ 
sleep(1000)

Пила с заданным размахом

Выдача пилообразного сигнала с заданным размахом(целые числа):

pila.js
while (true){
var max = 100;
var min = -100;
var sin = -100;
while (sin < max){
sin ++
TM("#TT0:8:1") = sin;
sleep(1000);
}
while (sin > min){
sin --
TM("#TT0:8:1") = sin;
sleep(1000);
}
}

Случайное измерение

Для выдачи тестового измерения с уровня ОИК можно воспользоваться скриптом на js.

Этот скрипт выдает рандомное значение в заданных пределах с заданным интервалом и помещает его в ТИТ по адресу Канал:КП:объект. В данном примере раз в секунду выдается рандомное значение в интервале от 80 до 100.

rand.js
while (true){
var max = 100;
var min = 80;
rand = Math.random() * (max - min) + min;
TM("#TT0:8:1") = rand;
sleep(1000);
}

Пила со случайным шагом

Пила со случайным шагом от 10 до 15 ед. в заданном диапазоне.

pilarand.js
while (true){
var max = 2250;
var min = 750;
var sin = 750;
while (sin < max){
sin = Math.round(sin + 10 + Math.random() * 5);
TM("#TT0:8:1") = sin;
sleep(1500);
}
while (sin > min){
sin = Math.round(sin - (10 + Math.random() * 5));
TM("#TT0:8:1") = sin;
sleep(1500);
}
}

АвтоТУ

Выдача автоТУ со скады, работает в связке с ТС, который можно включить с помощью активной зоны

циклически выдает ВКЛ и ОТКЛ через заданные промежутки в sleep

autoTU.js
while (true){
TS = TM("#TC3:5:551")    
if (TS == 1){
tmControl(3, 5, 11, 1);    
sleep(3000);
tmControl(3, 5, 11, 0);    
sleep(3000);
}
}