Для общей картины :)
Вид для печати
Для общей картины :)
Да, чето тупанул ADD и AND слились АND. Смутило что WORD через AND проходит но ничего не изменяется)
Как проще всего прокручивать несколько надписей в одной строке на дисплее плк63?
Пока три ошибки в виде выходов из 3 тригеров, если нет ошибок "нет ошибок", в случае ошибки в одной строке от 1 до 3 словосочетаний, по очереди. Сильно сокращать или использовать коды не хочется. Язык CFC плк63
Пробовал через три SEL, когда доходит до третьего выкидывает обращение к неизвестному адресу)
Я непонял чем еще можно менять текст в ShowString
Код:var
alarm: dword;
index: byte := 31;
alarm_str : array[0..2] of string(16) := 'нет ошибок','xxx','yyy','zzz';
ton: ton := (pt := t#3s);
-----
alarm := 0;
alarm.1 := ..
alarm.2 := ..
alarm.3 := ..
alarm.0 := alarm = 0;
ton(in := not ton.Q);
if ton.Q or not extract(alarm, index) or index > 3 then
repeat
index := (index + 1) mod 4;
until extract(alarm, index)
end_repeat
ShowString(?,0,?,alarm_str[index]);
end_if
В квадратики самиЦитата:
CFC
Спасибо. Осталось понять как это реализовать в CFC. Я выбрал CFC потому что нет времени вникать в написание кода. Для меня это страный набор понятных слов.)
А на кой?
вставляйте этот квадратик на свое квадратное поле и пихайте на/с ножек самиКод:PROGRAM XXXX
var_input
alarm1, alarm2,alarm3: bool;
end_var
var_output
str: string(16);
end_var
var
alarm: dword;
index: byte := 31;
alarm_str : array[0..2] of string(16) := 'нет ошибок','xxx','yyy','zzz';
ton: ton := (pt := t#3s);
end_var
-----
alarm := 0;
alarm.1 := alarm1;
alarm.2 := alarm2;
alarm.3 := alarm3;
alarm.0 := alarm = 0;
ton(in := not ton.Q);
if ton.Q or not extract(alarm, index) or index > 3 then
repeat
index := (index + 1) mod 4;
until extract(alarm, index)
end_repeat
str := alarm_str[index]; (*ShowString(?,0,?,alarm_str[index]);*)
end_if