Направление ветра
Расчет направления ветра на языке ЯРД
Блок кода |
---|
|
;#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) |
Пила с заданным размахом
Выдача пилообразного сигнала с заданным размахом(целые числа):
Блок кода |
---|
|
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.
Блок кода |
---|
|
while (true){
var max = 100;
var min = 80;
rand = Math.random() * (max - min) + min;
TM("#TT0:8:1") = rand;
sleep(1000);
} |
Пила со случайным шагом
Пила со случайным шагом от 10 до 15 ед. в заданном диапазоне.
Блок кода |
---|
language | js |
---|
title | 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
Блок кода |
---|
language | cpp | js |
---|
title | 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);
}
} |