Здравствуйте!
Все верно, для получения значения бита нужно использовать функцию
GetBit. В Вашем случае можно сделать один универсальный скрипт. Для этого, нужно связать доп. переменную заслонок с переменной хранящей значения битов и у каждой заслонки выставить свойство "Тег" равным номеру бита, по которому должна работать заслонка. Далее, останется только написать скрипт по событию OnDataChangeEx заслонки:
begin
if Sender is TM_Valve then // проверяем, что Sender это заслонка
with Sender as TM_Valve do // приводим Sender к типу "TM_Valve"
{ если бит доп. переменной(с номером = свойству "Тэг") заслонки равен TRUE, то изменяем цвет заслонки }
if GetBit(VariableEx.AsInt, Tag) = TRUE then
Color := clGreen
else
Color := clGray;
end.
и назначить его на событие OnDataChangeEx всех заслонок, которые должны работать по биту переменной.
Проект с примером во вложении.