Добрый день. Подскажите как в Мастерскада распаковать int16?
Добрый день. Подскажите как в Мастерскада распаковать int16?
С помощью ФБ "Распаковка 32битного значения" из раздела Вычисления палитры ФБ
Спасибо.
Добрый день. Не знаю может я чего нибудь не понимаю, но у меня такой вариант не прошел, т.к. в int при появлении старшего бита появляются отрицательные числа.
Если у вас тип именно int - знаковый, то да, могут быть отрицательные числа. Если будет uint - не будет.
Только не совсем ясно как это связано с ФБ "Распаковка". Он должен корректно обрабатывать отрицательные числа.
Спасибо.
Да абсолютно верно знаковый int с opc сервера. Распаковка на сколько я понимаю работает в диапазоне 0....65535.
Спасибо.
Сам ФБ приведет число к беззнаковому типу.
Спасибо.
А как такое можно сделать в Master Scada 4D ?
Я такой функции не нашёл.
задайте этот вопрос в этом разделе:
https://owen.ru/forum/forumdisplay.php?f=94
Спасибо.
Спасибо!
Еще я нашел ФБ "BYTE_TO_BITS", но там разбирают байт.
B0 := IN.0;
B1 := IN.1;
B2 := IN.2;
B3 := IN.3;
B4 := IN.4;
B5 := IN.5;
B6 := IN.6;
B7 := IN.7;
Если мне нужен Int16, то просто дописать еще 8 бит?
B8 := IN.8;
B9 := IN.9;
B10 := IN.10;
B11 := IN.11;
B12 := IN.12;
B13 := IN.13;
B14 := IN.14;
B15 := IN.15;