Просмотр полной версии : Получить переменную и записать через fx или fb
Rus747474
01.05.2025, 16:19
Есть переменные созданные в программе, например p1, p2.
Есть кнопка подключеная к i1. Как по нажатию на кнопку через fx или fb изменить значение переменных.
Например задать им значение 5
Как изменить значение переменных из кода fx или fb
Искал, но в этой свалке ничего полезного нет, проще снова спросить.
Не знаю, что вы подразумеваете под fx и fb, но, возможно, это поможет
83601
kondor3000
01.05.2025, 16:55
Есть переменные созданные в программе, например p1, p2.
Есть кнопка подключеная к i1. Как по нажатию на кнопку через fx или fb изменить значение переменных.
Например задать им значение 5
Например так, через SEL или в ФБ 83602
Код ФБ ниже, переносится копипастом в проект
function_block fb1 //имя функционального блока.
var_input
In : bool;
N_ : udint;
Const : udint;
end_var
var_output
N : udint;
end_var
if not In then // если вход выключен
N:=N_; // присвоить значение со входа N_
else // иначе
N:=Const; // присвоить значение со входа Const
end_if
end_function_block
Rus747474
02.05.2025, 06:33
Спасибо, это уже примерно похоже на то что я хочу.
А как возможно реализовать через код, чтоб при нажатии на одну кнопку записывались 2 переменные по очереди?
Пример нажал 1 раз в переменную р1 записалось 5, нажал второй раз в переменную р2 записалось 4, нажал ещё раз в переменную р1 записалось значение 3
Случайных людей в профессии всё больше и больше.
83606
function_block fb
var_input
i1 : bool;
end_var
var_output
p1, p2 : udint;
end_var
var
State : udint;
RTState : SYS.RTRIG;
end_var
RTState(I := i1); // Фиксация фронта
if RTState.Q then
case State of
0: p1 := 5; State := 1;
1: p2 := 4; State := 2;
2: p1 := 3; State := 0;
end_case
end_if
end_function_block
EFrol Это не человек, это опять СТУДЕНЬ!!!
Видимо, у него задание на Функции и Функциональные блоки.
Так что пиши ему код посложнее, чтобы он мог скопировать, но не мог его объяснить!
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot