Просмотр полной версии : Нужна Ваша помощь!!!
Sergijsever
19.11.2023, 15:54
Доброго времени!
Подскажите пожалуйста, задача такая:
Функциональный блок ST в OWEN logic
Входная переменная А типа udint и допустим 3 выходные переменные Q Q1 и Q2 тмпа bool.
Инструкция Q := A = 15 .. 29 ;
Q1 := A = 30 .. 44 ;
Q2 := A = 45 .. 59 ; ну и т.д. Нужно что бы выход Q был истина пока А находится в диапазоне от 15 до 29 и т.д. проблема в том что редактор ФБ не выдаё ни одной ошибки, но критическая ошибка висит в самой программе. Подскажите где косяк и как мне проще реализовать этот алгоритм.
Заранее благодарен.
Такой инструкции не нашел?! А вот такая сработала!
function_block f1 //имя функционального блока.
var_input //объявление входных переменных
A : udint;
end_var
var_output //объявление выходных переменных
Q : bool;
Q1: bool;
Q2: bool;
end_var
Q := (A >= 15 AND A <= 29);
Q1 := (A >= 30 AND A <= 44);
Q2 := (A >= 45 AND A <= 59);
end_function_block
Доброго времени!
Подскажите пожалуйста, задача такая:
Функциональный блок ST в OWEN logic
Входная переменная А типа udint и допустим 3 выходные переменные Q Q1 и Q2 тмпа bool.
Инструкция Q := A = 15 .. 29 ;
Q1 := A = 30 .. 44 ;
Q2 := A = 45 .. 59 ; ну и т.д. Нужно что бы выход Q был истина пока А находится в диапазоне от 15 до 29 и т.д. проблема в том что редактор ФБ не выдаё ни одной ошибки, но критическая ошибка висит в самой программе. Подскажите где косяк и как мне проще реализовать этот алгоритм.
Заранее благодарен.
function_block functionblock1 //имя функционального блока.
var_input //объявление входных переменных
A : udint; //входная переменная для значения счетчика после сброса
end_var
var_output //объявление выходных переменных
Q : bool;
Q1 : bool;
Q2 : bool;
end_var
case A of
15 .. 29: Q:= TRUE; Q1:= FALSE; Q2:= FALSE;
30 .. 44: Q:= FALSE; Q1:= TRUE; Q2:= FALSE;
45 .. 59: Q:= FALSE; Q1:= FALSE; Q2:= TRUE;
else
Q:= FALSE; Q1:= FALSE; Q2:= FALSE;
end_case
end_function_block
Sergijsever
19.11.2023, 18:58
Премного Вам благодарен, спасибо большое!!!
Василий Кашуба
19.11.2023, 22:37
Я так решал когда то эту задачу. Только вместо EQ нужно GT.
Powered by vBulletin® Version 4.2.3 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot