WinCC масштабирование тэгов
Игорь; 9.2.01

Надо прочитать из микроконтроллера Слово(Word)

по ModBus Протоколу. А затем разделить на 10.
Wincc поддерживает маштабирование,но тип данных не изменяет, поэтому десятые доли отбрасываются,
что делать?
Где можно взять документацию на написание OPC драйвера, и сервера?

Re: WinCC масштабирование тэгов
Александр Родин, ООО "Нева Электрик"; 9.2.01

Кстати, я такую фишку уже встречал. Вышел из сложившейся ситуации посредством написания функции в Global Script-е


float Make_Float(int a, float c)
{
float b;
b = a/c; // с - число кратное 10
return b;
}

Вызов лучше делать следующий:

Val = Make_Float (Val1, 10.0);

Тогда количество нулей после запятой опредит вам количество знаков.

Собственно вот.
Re: WinCC масштабирование тэгов
Никаноров В. - Сименс; 12.2.01

Язык C поддерживает конверсию форматов, например:

unsigned short Tag_Name;
(double) Tag_Name;
Re: WinCC масштабирование тэгов
Никаноров В. - Сименс; 14.2.01

Самый простой способ, это объявить в WinCC переменную типа Float 32-bit или Float 64-bit.

А затем задать конверсию форматов (Adapt Format): FloatToWord или DoubleToWord (прямо в диалоге объявления переменной). При этом из контроллера читается Word и преобразуется соответственно во Float или Double в WinCC. (обратите внимание, что при преобразовании, например, DoubleToWord Double относится к WinCC, а Word - к PLC)